home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Auge 4000 / Auge 4000 #77 (1994-02-10)(Amiga User Gruppe Einzugsgebiet 4000).zip / Auge 4000 #77 (1994-02-10)(Amiga User Gruppe Einzugsgebiet 4000).adf / Write / WRITE.lha / WRITEV3.371.lha / WRITE.DOK < prev    next >
Text File  |  1993-12-27  |  110KB  |  4,337 lines

  1.  
  2. Dokumentation für WRITE 3.256 vom 27 December 1993
  3. ***************************************************
  4.  
  5.  
  6. Einige wichtige Bemerkungen
  7. ****************************
  8.  
  9.    - WRITE läuft nur unter OS 2.0 oder höher !!!
  10.  
  11.    - Lesen sie bitte ausführlich die Anleitung bevor sie WRITE das erste
  12.      Mal benutzen.Vor allen Dingen die Kapitel Copyright,Registrierung
  13.      und Installation.
  14.  
  15.  
  16. Autor
  17. ******
  18.  
  19. Geld,Kritik,Vorschläge,Lob und Tadel in Deutsch oder English an:
  20.  
  21. Postadresse
  22.                Tim Teulings
  23.                An der Dorndelle 16
  24.                59192 Bergkamen
  25.                DEUTSCHLAND
  26.  
  27. EMailaddresse
  28.      MausNet :
  29.  
  30.           Tim Teulings @ UN
  31.  
  32.      InterNet :
  33.  
  34.           Tim_Teulings@un.maus.ruhr.de
  35.  
  36. Bankverbindung
  37.           Sparkasse Berkamen - Bönen
  38.           BLZ     : 410 518 45
  39.           KontoNr.: 16186496
  40.           Tim Teulings
  41.  
  42.  
  43. Danksagungen
  44. *************
  45.  
  46.                                 Danke...
  47.  
  48. Chris Gray
  49.      Für den grandiosen Draco-Compiler mit dem WRITE bis zur Version 2.50
  50.      geschrieben wurde.
  51.  
  52. A + L
  53.      Für ihren Oberon-Compiler, der das Schreiben von WRITE noch
  54.      einfacher machte.
  55.  
  56. Lars Hanke
  57.      Für Tips, Ktitik und Beta-Testing.
  58.  
  59. Thomas Lottermoser
  60.      Für Tips, Kritik und die Literatur.
  61.  
  62. Thomas Stuff
  63.      Für Tips, Ktitik und Beta-Testing.
  64.  
  65. Andreas Schulz
  66.      Für den sagenumwobenden DRACO-Club Deutschland.
  67.  
  68. COMMODORE
  69.      Für diesen schnuckeligen, kleinen Rechner, mit dem man Tag und
  70.      Nacht viel Spaß haben kann. (Hehe...)
  71.  
  72.  
  73. Einleitung
  74. ***********
  75.  
  76. Ich besitze den AMIGA nun seit mehreren Jahren. In dieser Zeit bin ich
  77. mit vielen Texteditoren in Berührung gekommen. Anfangs das NOTEPAD und
  78. ED, später mit verschieden Version von EMACS sowie PD-Editoren wie DME,
  79. AZ, DED und JED als auch einige komerziellen Produkte. Mit allen konnte
  80. man Texte schreiben, doch auch alle ließen endweder bei der
  81. Geschwindigkeit oder beim Bediehnungskomfort zu wünschen übrig. So
  82. erschütterten einige durch eine unerträgliche Scrollgeschwindigkeit,
  83. andere erschwerten einem die Arbeit durch unerträgliche und unmögliche
  84. Tastaturbelegungen und - kombinationen. Wieder andere erschlugen mich
  85. durch viele, für einen Texteditor unnötige Funktionen, die zu Lasten
  86. der Größe des Editors gingen, oder glänzten durch unzureichende
  87. Editiermöglichkeiten. So beschloß ich alle Vorteile in einem Programm
  88. zu vereinen (was sonst !) und einen Editor zu schreiben, der allen
  89. *meinen* Anforderungen entsprach.
  90.  
  91.    * WRITE als reiner Texteditor ist dazu gedacht Texte oder Programme zu
  92.      schreiben.
  93.  
  94.    * Er besitzt alle gängigen Blockoperationen (Cut, Copy, Paste...),
  95.      sowie umfangreiche Funktionen zum Suchen und Ersetzen von Wörtern
  96.      etc...
  97.  
  98.    * Seine Speicherverwaltung ist völlig dynamisch. Es können somit
  99.      beliebig viele Textfenster geöffnet werden, der Text kann, ebenso
  100.      wie jede Zeile beliebig lang sein. Einzige Begrenzung ist der
  101.      vorhandene Speicherplatz.
  102.  
  103.    * WRITE wird voll von Intuition unterstützt. D.h. alle Funktionen
  104.      können über Menüs aufgerufen werden, der Cursor kann mit der Maus
  105.      gesetzt, Blöcke mit ihr markiert werden.
  106.  
  107.    * Menüs und Tastatur können über eine Textdatei beliebig
  108.      konfiguriert werden. Auch ist WRITE darüber hinaus weiter
  109.      programmierbar. WRITE kann somit selbst in Details den
  110.      Erfordernissen und Wünschen des Benutzers vollständig angepaßt
  111.      werden.
  112.  
  113.    * WRITE besitzt eine Undo-Funktion, mit der eine beliebige,
  114.      voreinstellbare Zahl von Textveränderungen wieder rückgängig
  115.      gemacht werden kann.
  116.  
  117.    * WRITE beherrscht das automatische generieren von Backups. Dabei kann
  118.      einfach eine Endung an die Datei angehangen, die Datei unbenannt
  119.      oder in ein angegebenes Verzeichnis unter einen festen Namen
  120.      abgespeichert werden.
  121.  
  122.    * Es können unterschiedliche Konfigurationen *gleichzeitig* benutzt
  123.      werden. So kann man in einem Fenster mit einer TeX-Konfiguration
  124.      arbeiten, während gleichzeitig in einem anderen Fenster typische
  125.      Einstellungen zur Programmierung in C verwendet werden. Gleichzeitig
  126.      kann man mit der `MAILER.CONFIG' eine Mail mit Wordwrap etc.
  127.      schreiben.
  128.  
  129.    * Jede Konfiguration kann auf einem eigenen Screen mit einem eigenen
  130.      Font in den eigenen Farben arbeiten. WRITE ist in allen seinen
  131.      Fenstern und Requestern völlig auflösungs- und fontsensitiv. Es
  132.      wird immer der eingestellte DefaultFont eines Screen verwendet.
  133.      Dabei kann es sich sogar um einen Proportionalfont handeln.
  134.  
  135.    * WRITE läuft unter OS 2.0, OS 2.1 und OS 3.0
  136.  
  137.    * WRITE unterstützt daher viele Features von OS 2.0, wie z.B.
  138.      AppWindows, -menus und -icons, sowie auch einige Features von 3.0.
  139.  
  140.    * WRITE unterstützt die `locale.library' ab OS 2.1 und ist dadurch
  141.      fast völlig lokalisierbar.
  142.  
  143.    * WRITE besitzt eine komfortable AREXX-Schnittstelle und kann so
  144.      beliebig weiter ausgebaut werden. Über diese Schnittstelle kann man
  145.      voll auf die ungefähr 130 Funktionen und fast 80 Variablen
  146.      zugreifen.
  147.  
  148.    * WRITE beinhaltet einige konfortable AREXX-Scripts für SAS C, DFA,
  149.      und den OBERON-Compiler der Firma A+L AG. Desweiteren liegen Scripts
  150.      für umfangreichere Textverarbeitungoperationen sowie einige
  151.      Beispielscripts für komplexere Funktionen bei.
  152.  
  153.    * WRITE besticht in vielen Funktionen durch seine Schnelligkeit.
  154.  
  155.  
  156. Copyright
  157. **********
  158.  
  159.  
  160. Demoversion
  161. ============
  162.  
  163.    * Die Demoversion von WRITE ist Shareware. Sie darf unter folgenden
  164.      Bedingungen benutzt und weitergereicht werden:
  165.  
  166.    * Eine Diskette, die dieses Demo von WRITE in irgendeiner Form
  167.      beinhaltet, darf *nicht* für mehr als 5 DM oder deren Gegenwert in
  168.      einer ausländischen Währung kopiert, verkauft, weitergereicht
  169.      werden.
  170.  
  171.    * Fred Fish ist es ausdrücklich erlaubt diese Demoversion in seine
  172.      Sammlung aufzunehmen.
  173.  
  174.    * Das Paket darf nur vollständig weitergereicht werden !
  175.  
  176.    * Dem Benutzer wird es gestattet, WRITE ein bis zwei Monate zu
  177.      benutzen, dann muß er sich registrieren lassen oder den Gebrauch
  178.      von WRITE einstellen.
  179.  
  180.  
  181. Vollversion
  182. ============
  183.  
  184.    * Diese Version von WRITE fällt ebenfalls unter dem Begriff Shareware.
  185.      Es gelten jedoch folgende Einschränkungen
  186.  
  187.    * WRITE darf nicht...
  188.  
  189.         ... in irgendeiner Form weitergereicht werden.
  190.  
  191.         ... von jemand anders als mir persönlich verkauft oder
  192.           vertrieben werden.
  193.  
  194.    * Eine vollständige Version ist bei mir unter der oben genannten
  195.      Adresse für 30DM zu erhalten.
  196.  
  197.    * Alle Limitierungen in der Demoversion sind in der vollständigen
  198.      Version aufgehoben.
  199.  
  200.    * Jeder, der eine voll funktionsfähige Version von WRITE mehr als
  201.      *einmal* benutzt ohne sie offiziell gekauft zu haben, wird
  202.      aufgefordert, ja sollte sich von seinem Gewissen gezwungen fühlen,
  203.      diese nachträglich zu erwerben, da in WRITE mittlerweile mehr als
  204.      *vier* Jahre Programierarbeit stecken !
  205.  
  206.    * Besitzer der vollständigen Version werden über Updates informiert
  207.      und können diese für ein weiteres Entgeld erwerben.
  208.  
  209.    * Ich (als der Autor von WRITE) verpflichte mich *gravierende* Mängel
  210.      zu beheben.
  211.  
  212.    * WRITE darf nur auf einen einzigen Rechner installiert sein. Er darf
  213.      z.B. also nicht in Netzwerken oder auf Mehrplatzsystem benutzt
  214.      werden. Sollte dies jedoch erforderlich sein, so bitte ich um
  215.      Rücksprache.
  216.  
  217. Ich möchte hier außerdem ausdrücklich bemerken, daß ich nicht
  218. verpflichtet bin an WRITE weiterzuarbeiten. Ich kann jederzeit Teile des
  219. Editors ändern, rauschmeißen, neues einfügen. Das Format des
  220. Konfigurationsfiles kann sich jedezeit ändern. Kompatibilität zu
  221. älteren Versionen kann somit auch auf Grund der Leistungsoptimierung
  222. nicht immer gewährleistet werden. Ich kann jeder Zeit Preise und
  223. Kaufbedingungen ändern.
  224.  
  225. Ich mache darauf aufmerksam, daß die Programmiererei nur eines meiner
  226. Hobbies ist und ich auch noch nebenbei studiere. Sollte also nicht sofort
  227. am nächsten Tag WRITE in der Post liegen, so gilt der klassische Spruch:
  228. *KEINE PANIK !!!*. Einen bis eineinhalb Monate Bearbeitungszeit nehme ich
  229. mir in Ausnahmefällen schon heraus. Möglicherweise programmiere ich
  230. auch gerade an einer neuen Version mit doppelt so vielen Features... ?
  231.  
  232. Schließlich bin ich nicht in der Lage nach jedem Bugfix allen Besitzer
  233. eine neue Version zuzuschicken (ich habe einfach nicht das Geld !).
  234. Sollte es jedoch bei einzelnen Personen zu gravierenden,unumgehbaren
  235. Fehlern in hochwichtigen Funktionen kommen, so sollte sich immer etwas
  236. machen lassen. Spätestens dann, wenn man mir mit der ausführlichen
  237. Fehlerbeschreibung einen Rückantwortbrief beilegt.
  238.  
  239. Registierte Besitzer erhalten einen Keyfile, mit dem sie in der Lage sind
  240. jede neu herausgekommene Version sofort ohne weitere Umstände zu
  241. benutzen. Über größere Updates weren alle registrierten Benutzer
  242. postalisch/EMail benachrichtigt. Ein Update kann man auch direkt von mir
  243. gegen eine Gebühr von 5DM bzw. 10DM für alle Länder außerhalb
  244. Europaserhalten.
  245.  
  246. Die Zeit die ich in WRITE investiere, sowie die Höhe der
  247. Registrierungsgebühr hängen entscheidend von der Zahl der
  248. Registrierungen ab. Also ... Je mehr sich registrieren lassen ...
  249.  
  250.  
  251. Allgemein
  252. ==========
  253.  
  254.    * Ich kann *keine* Haftung für jegliche Schäden, die direkt oder
  255.      indirekt durch WRITE enststehen, übernehmen. So bin ich z.B. nicht
  256.      für versehendlich gelöschte oder durch Absturz verlorengegangende
  257.      wichtige Dokumente, noch für qualmende Hardware, defekte Software,
  258.      verwirrte Geister, gescheiterten Ehen etc., die irgendwie berechtigt
  259.      oder unberechtigt mit WRITE in Verbindung gebracht werden können,
  260.      verantwortlich zu machen. WRITE ist gut aber nicht perfekt. ( noch
  261.      nicht ! )
  262.  
  263.    * Jegliche Änderungen an Teilen dieses Paketes (Docs...) sind
  264.      *verboten* !
  265.  
  266.    * Das widerrechtliche Benutzen (klauen) von Teilen dieses Paketes ist
  267.      ebenfalls *verboten* !
  268.  
  269.    * Es ist verboten WRITE zu dissassemblieren, decodieren,
  270.      decompilieren...
  271.  
  272.    * Der Käufer akzeptiert mit der Benutzung von WRITE obige Konditionen.
  273.  
  274.    * Jeder, der gegen diese Bedingungen verstößt, sollte sich bewust
  275.      sein, daß damit gegebenenfalls eine strafbare Handlung begeht,
  276.      gegen die ich entsprechend vorgehen werde. Speziell das Vertreiben
  277.      der Vollversion von WRITE als Raubkopie fällt unter diesen Punkt.
  278.  
  279.  
  280. Registrierung
  281. **************
  282.  
  283. Wie bekomme ich den nun die Vollversion von WRITE ?
  284.  
  285.   1. Sie schicken mir offiziell eine Bestellung per Post oder EMail mit
  286.      ungefähr folgenden Wortlaut :
  287.  
  288.      "Hiermit bestelle ich die neuste Vollversion von WRITE. Ich
  289.      akzeptiere die in der Anleitung unter den Punkten Copyright und
  290.      Registrierung genannten Kaufbedingungen und Hinweise."
  291.  
  292.      Fügen sie dem Brief auf jeden Fall ihre komplette Adresse, wenn
  293.      möglich auch ihre EMailadresse und ihre Telephonnummer bei. Sollte
  294.      es zu Rückfragen kommen, ist es sicherlich im ihren Sinne, wenn ich
  295.      sie so schnell wie möglich erreiche.
  296.  
  297.      Geben sie an, wie viele Versionen sie von WRITE haben wollen.
  298.  
  299.      Geben sie an, für welchen Prozessor die Vollversion kompiliert
  300.      werden soll. Momentan habe ich die Möglichkeit Code für den 68000
  301.      aber auch für 68020 und 68030 zu erzeugen.
  302.  
  303.      Geben sie an, ob sie WRITE sofort bekommen wollen, oder noch
  304.      gegebenenfalls auf eine neue Version warten wollen.
  305.  
  306.   2. Lassen sie mir das Geld zukommen. Sie können mir das Geld in Form
  307.      von Bargeld oder auch als Scheck zukommen lassen. Auch eine
  308.      Überweisung auf das unter Autor angegebene Konto sowie eine
  309.      postalische Zustellung sind möglich. Naturalien nehme ich nicht an.
  310.      Im Einzelfall läßt sich auch über eine Begleichung durch ein
  311.      eigenes, sharewarebehaftetes Profukt reden.
  312.  
  313.      Für Versendung auserhalb Europas bitte ich sie, weitere 5DM zu
  314.      überweisen !
  315.  
  316.      Stellen sie auf jeden Fall sicher das ich mit dem Geld auch ihren
  317.      Namen und Addresse erhalte, damit ich ihnen auch WRITE zustellen
  318.      kann.
  319.  
  320.   3. Warten sie darauf, daß der Postbote ihnen WRITE in Haus bringt.
  321.  
  322.   4. Klatschen sie in die Hände, freuen sie sich und werden sie sich
  323.      bewußt, daß sie einen weiteren, entscheidenen Schritt in ihrem
  324.      Leben getan haben.
  325.  
  326.  
  327.  
  328. Installation
  329. *************
  330.  
  331. Folgende Sachen sind unbedingt zu beachten:
  332.  
  333.    * Auf ihren System muß OS 2.0 oder höher installiert sein !
  334.  
  335.    * Folgende Libraries sollten sich im LIBS:-Verzeichnis befinden. Sie
  336.      sind Bestandteil des Betriebssystems.
  337.  
  338.     `asl.library'
  339.     `diskfont.library'
  340.     `commodities.library'
  341.     `iffparse.library'          (optional)
  342.      optional für REXX:
  343.  
  344.     `rexxsyslib.library'
  345.     `rexxsupport.library'
  346.    * Es sollte genügend Speicher vorhanden sein ! Obwohl WRITE
  347.      speichersparen programmiert ist, braucht er doch einige 100KByte an
  348.      Speicher. Doch ist es möglich durch Verzicht auf ein weinig Komfort
  349.      den Speicherbedarf zu verinngern.
  350.  
  351.    * WRITE braucht recht viel Stack (ca. 20000 Bytes). Sollte dieser
  352.      nicht vorhanden sein, setzt WRITE ihn selbst auf 30000 Bytes herauf.
  353.  
  354.    * Auf der Diskette, die sie bekommen haben, sollte sich ein
  355.      Installer-Skript für den Installer, den sie mit ihren
  356.      Betriebssystemdisketten bekommen haben, befinden. Alles was sie also
  357.      im Normalfall zu tun haben, ist mit einem Doppelklick auf das
  358.      entsprechende Icon das automatische Installationsprogramm zu starten
  359.      und die Fragen ihren Wünschen entsprechend zu beantworten.
  360.  
  361.      Wollen sie dennoch WRITE manuell installieren, sollten sie wie folgt
  362.      vorgehen.
  363.  
  364.        1. Der(Die) Konfigurationsfile(s) sollte(n) auf folgende Weise
  365.           installiert werden:
  366.  
  367.             1. Schaffen sie auf ihrer Platte ein neues Verzeichnis mit
  368.                beliebigem Namen.
  369.  
  370.             2. Kopieren sie alle Konfigurationsdateien dort hinein.
  371.  
  372.             3. In der Umgebungsvariable `WRITE.CONFIG' des Betriebsystems
  373.                sollte der *vollständige* Pfad dieses Verzeichnisses
  374.                stehen. Dies kann dadurch erreicht werden,...
  375.  
  376.                   ... daß man diese mit dem Befehl `SetEnv' ( oder `Set'
  377.                     für eine COMMODORE-SHELL ) manuell nach jedem
  378.                     Bootvorgang setzt.
  379.  
  380.                   ... daß man einen diese Befehle in seine
  381.                     `startup-sequence' oder noch besser in die
  382.                     `user-startup' einfügt.
  383.  
  384.                   ... daß man nach Setzen dieser Variable den File
  385.                     `WRITE.CONFIG' aus dem `ENV:'-Verzeichniss ins
  386.                     `ENVARC:'-Verzeichnis kopiert, so daß die
  387.                     Umgebungsvariable automatisch nach jedem Boot-Vorgang
  388.                     gesetzt wird.
  389.  
  390.                (Letzteres ist meiner Meinung nach die geschickteste
  391.                Methode ! )
  392.  
  393.  
  394.           WRITE such nun alle Konfigurationsdateien in diesen
  395.           Verzeichnis, oder, falls die Umgebungsvariable nicht gesetzt
  396.           wurde, im aktuellen. Zur Referenz des Konfigurationsfiles
  397.           brauchen sie somit immer nur den Dateinamen ohne Pfad.
  398.  
  399.        2. Kopieren sie die `garbagecollector.library' ins
  400.           LIBS:-Verzeichnis.
  401.  
  402.        3. Kopieren sie die Datei `WRITE.guide' in ein Verzeichnis, wo sie
  403.           von AmigaGuide bzw. MultiView gefunden wird. Der Guide-File ist
  404.           für die Online-Hilfe wichtig.
  405.  
  406.           Es besteht auch die Möglichkeit die Umgebungsvariabel
  407.           `WRITE.guide' mit dem kompletten Pfad Des Guide-Files zu
  408.           setzten.
  409.  
  410.        4. Kopieren sie die `.catalog'-Files in die entsprechenden
  411.           Verzeichnisse ihrer Workbench.
  412.  
  413.        5. Kopieren sie die `REXX'-Scripts in ein Verzeichnis, welches im
  414.           Suchpfad von REXX liegt.
  415.  
  416.  
  417.    * Kopieren sie nun WRITE selbst samt seinem Icon in das von ihnen
  418.      gewünschte Verzeichnis.
  419.  
  420.    * Beenden sie möglichst alle weiteren Programme, starten sie das
  421.      `GarbagePrefs'-Programm in der `Prefs'-Schublade der
  422.      Installationsdiskette, wählen sie den Menüpunkt `Editieren/Werte
  423.      vorschlagen' bestätigen sie mit `Speichern' und verlassen das
  424.      Programm.
  425.  
  426.    * Ändern sie die ToolTypes des WRITE-Icons ihren Wünschen
  427.      entsprechend.
  428.  
  429.    * Starten sie WRITE.
  430.  
  431. Schließlich (auch nach der Installation durch das Installationsscript)
  432. sollten noch folgende Dinge getan werden :
  433.  
  434.    * Setzten sie in den REXX-Scripts `open.wrx', `mailer.wrx' und
  435.      `OpenWrite.wrx' den Pfad von WRITE an der entsprechend makierten
  436.      Stelle ein.
  437.  
  438.    * Kontrollieren sie, ob die Einstellungen im File `STARTUP.CONFIG'
  439.      ihren Wünschen entsprechen. Es kann sein, daß die dort definierten
  440.      Hotkeys sich mit bereits vorhandenen Hotkeys überschneiden, oder
  441.      das die eingestelleten Backup-Modi auf nicht existierende
  442.      Verzeichnisse zeigen.
  443.  
  444.  
  445. Konzept
  446. ********
  447.  
  448.  
  449. Das Prinzip
  450. ============
  451.  
  452. Viele Texteditoren sind durch eine feste Tastatur- und Menübelegung
  453. recht beschränkt in ihren Möglichkeiten. Stört den Benutzer
  454. irgendetwas an der Handhabung so muß er sich daran gewöhnen oder mit
  455. einen anderen Texteditor vorlieb nehmen.
  456.  
  457. Bei der Programmierung von WRITE wurde versucht dem Benutzer
  458. Möglichkeiten zur Beeinflussung der Handhabung, des äußeren
  459. Erscheinungsbildes, mitzugeben.
  460.  
  461. Dies wird dadurch erreicht,daß WRITE mittels einer kleinen in den Editor
  462. eingebauten Interpretersprache, einer Mischung aus der Batchsprache des
  463. Betriebssystems und AREXX, programmierbar ist.
  464.  
  465. Der Editor führt also direkt keine Tastaturkommandos oder Menüpunkte
  466. aus, sondern nur noch Befehlsfolgen, die der Tastatur und Menü beliebig
  467. zugewiesen werden können. Der Benutzer kann frei bestimmen, was
  468. passiert, wenn diese Taste gedrückt oder jener Menüpunkt ausgewählt
  469. wird. Ja selbst die Menüs an sich sind frei definierbar; und sollten die
  470. Möglichkeiten des internen Interpreters nicht reichen, so können
  471. AREXX-Makros verwendet werden. Jeder interne Befehl ist auch über AREXX
  472. erreichbar.
  473.  
  474.  
  475. Der Ed
  476. =======
  477.  
  478. Die interne Struktur zum Verwalten eines Textes wird Ed genannt. Für
  479. jeden Text, der geladen wird, gibt es einen Ed. Im Prinzip kann man einen
  480. Ed mit einem Editorfenster identifizieren (Obwohl nicht jeder Ed ein
  481. Fenster besitzen muß).
  482.  
  483. Jedem Ed kann bei seiner Erschaffung (mittels NewEd) ein eigene
  484. Konfigurationsdatei zugewiesen werden. WRITE läd diese Datei, wenn sie
  485. nicht schon bereits für einen anderen Ed benutzt wurde, automatisch nach.
  486. D.h., startet man WRITE so, daß er keinen Ed öffnet, läd er auch keinen
  487. Konfigurationsfile.
  488.  
  489. Dies klingt alles recht kompliziert. Sie vermuten, daß sie nun vor der
  490. ersten Benutzung erst einmal stundenlang die Anleitung studieren müssen.
  491. Doch keine Panik! Es liegt ein dokumentierter Beispielfile bei, der die
  492. Möglichkeiten von WRITE ausführlich demonstriert. Spielen sie mit
  493. diesem ein wenig herum, merken sie sich Dinge, die sie stören, schauen
  494. sie sich ihre Realisierung im Konfigurationsfile an, versuchen sie
  495. mittels der Dokumentation zu verstehen, was passiert und Überlegen sie
  496. sich , wie sich dies anders machen ließe, um dann schließlich den
  497. Konfigurationsfile zu ändern. Achten sie dabei darauf, daß sie immer
  498. einen lauffähigen Konfigurationsfile parat haben, da WRITE sich mit
  499. einem fehlerhaften Konfigurationsfile nicht starten läßt. Sie währen
  500. somit nicht in der Lage WRITE zu benutzen, um die Fehler zu korriegieren.
  501. Das Beste ist es, die geänderte Stelle zu markieren und sie mit dem
  502. Menüpunkt `INTERN/Parse block' auf ihre syntaktische Richtigkeit zu
  503. überprüfen.
  504.  
  505.  
  506. Die Syntax des internen Interpreters
  507. *************************************
  508.  
  509.  
  510. Allgemeine Syntax
  511. ==================
  512.  
  513. Der interne Interpreter verarbeitet beliebig lange Befehlsfolgen. Diese
  514. bestehen aus einer Liste von Befehlen, im weiteren auch Funktionen
  515. genannt, samt ihrer Argumente. Dabei besitzt jeder Befehl eine feste Zahl
  516. von Argumenten von jeweils klar definiertem Typ. Argumente dürfen also
  517. z.B. nicht einfach weggelassen werden. Ein Beispiel:
  518.  
  519.      Befehl1 Argument1
  520.      Befehl2 Argument1 Argument2 Argument3
  521.  
  522. Dem interne Parser (im Gegensatz zu AREXX) ist es dabei egal wie die
  523. Befehlsfolge formatiert ist. So kann obriges Beispiel auch folgenderweise
  524. geschrieben werden:
  525.  
  526.      Befehl1 Argument1 Befehl2
  527.      Argument 1 Argument 2
  528.      Argument3
  529.  
  530. Der Interpreter arbeitet nun die Befehlsfolge von oben nach unten ab.
  531. Doch ist es dies nicht immer sinnvoll. So öffnet der 1. Befehl z.B. ein
  532. Fenster, während der 2. in dieses einen Text schreibt. Was würde
  533. passieren wenn z.B. das Fenster wegen Speichermangel nicht geöffnet
  534. werden kann ? Es würde versucht in ein nicht vorhandenes Fenster eine
  535. Text zu schreiben. Deshalb geben einige Befehle einen Fehler zurück Ist
  536. ein Fehler aufgetreten, so wird die Abarbeitung der Befehlsfolge sofort
  537. abgebrochen.
  538.  
  539. Eine komplette Auflistung aller Funktionen finden sie im Kapitel
  540. Funktionsbeschreibung
  541.  
  542.  
  543. Die verschieden Typen
  544. ======================
  545.  
  546. Der Interpreter unterscheidet zwischen 4 verschieden Typen:
  547.  
  548.   1. Zahlen. Zahlen sind vorzeichenlose Dezimalzahlen von 0 bis 214783647.
  549.      Einige Beispiele:
  550.  
  551.           1234 , 4567 , 229874 , 0
  552.  
  553.      Zahlen sind zuweisungskompatibel zu Zeichenketten. Ihr Inhalt wird
  554.      bei einer Zuweisung automatisch in einen String umgewandelt.
  555.  
  556.   2. Strings. Es gibt zwei unterschiedliche Arten
  557.  
  558.        1. Wörter. Wörter bestehen aus einem optionalen
  559.           Unterstrich,einem Buchstaben und weiteren Buchstaben oder
  560.           Ziffern.Bei jedem Wort schaut der Interpreter nach, ob es sich
  561.           bei dem Wort nicht um einen Befehl oder eine Variable handelt.
  562.           Befehle werden ausgeführt, Variablen durch ihren Inhalt
  563.           ersetzt. Beispiele:
  564.  
  565.                _EinWort , W2345r , _w2swd
  566.  
  567.        2. Zeichenketten. Zeichenketten können im Gegensatz zu Wörtern
  568.           aus belieben Zeichen bestehen. Sie werden durch sogenannte
  569.           Quotes umschlossen. Quotes können sein: `"",(),`''.Variablen
  570.           können mittels `$VariableName$' in die Zeichenkette eingefügt
  571.           werden. Auch können Zeichenketten mittels folgender Syntax
  572.           über mehrere Zeilen verteilt werden:
  573.  
  574.                "1. Teil des Strings"+
  575.                (2. Teil des Strings)
  576.  
  577.   3. Tags. Tags bestehen aus einer einleitenden,geschweiften Klammer `{'
  578.      beliebig vielen Zahlen oder Konstanten und einer abschließenden,
  579.      geschweiften Klammer `}'. Leere Tags können und sollten weggelassen
  580.      werden.
  581.  
  582.   4. Funktionsliste. Funktionlisten bestehen aus einer Befehlsfolge (d.H.
  583.      einer Reihe von Befehlen sammt ihren Argumenten) und einem
  584.      abschließenden Semikolon. Beispiel:
  585.  
  586.           Befehl1 Argument 1 Befehl2 Argument1 Argument2 Argument3;
  587.  
  588.   5. Kommentare. Kommentare fangen mit `/*' an und hören mit `*/' auf.
  589.      Alles, was im Kommentar steht wird vom Parser ignoriert. Kommentare
  590.      können überall gesetzt werden. Kommentare können auch
  591.      verschachtelt werden. Folgendes Konstrukt ist deshalb erlaubt :
  592.  
  593.           /* Ein paar Sachen zum Debugen
  594.           
  595.             /* Aufruf 1 */
  596.           
  597.             blabla 1 2 3
  598.           
  599.             /* Aufruf 2 */
  600.           
  601.             blupblup "Eine Wasserblase "
  602.           
  603.           */
  604.  
  605.  
  606. Variablen
  607. ==========
  608.  
  609. Damit der Benutzer nicht nur die internen Funktionen aufrufen, sondern
  610. auch auf interne Einstellungen zugreifen und diese verändern kann, gibt
  611. es Variablen. Variablen sind vom Typ `Zeichenkette' oder `Zahl'. Auch
  612. hier gilt Zahlen sind zuweisungskompatibel zu Zeichenketten. Möchte man
  613. nun z.B. als Parameter einer Funktion statt einer Zahl eine Variablen
  614. angeben, so tätigt man dies einfach durch die Nennung des Variablenamens.
  615. Hat zum Beispiel die Variable `x' den Inhalt `25' so sind die
  616. Funktionsaufrufe
  617.  
  618.      MacheMitZahl 25
  619.      MacheMitZahl x
  620.  
  621. identisch.
  622.  
  623. Im Zusammenhang mit Funktionen gibt es zwei spezielle Variablen: _RS und
  624. _RN. Sie existieren, da einige Funktionen ein Resultat zurückgeben. Ist
  625. der Rückgabewert vom Typ `Zahl', dann steht er in _RN, ist er vom Typ
  626. `Zeichenkette', dann steht er in der Variable _RS. Auf den Rückgabewert
  627. einer Funktion kann also solange zugegriffen werden, bis er von einer
  628. Funktion selben Rückgabetyps überschrieben wird.
  629.  
  630. Wie schon in Typen erwähnt können Variablen durch `$VariableName$' in
  631. einen String eingefügt werden. So ergibt `Message "Zeit : $_Time$' zum
  632. Beispiel einen Requester mit der aktuellen Zeit.
  633.  
  634. Bitte beachten sie, daß einige Variabeln nur geschrieben/ausgelesen
  635. werden können, wenn der entsprechende Ed/die entsprechende Konfiguration
  636. aktiviert ist. Dies geschieht mit LockWindow und GetConfig.
  637.  
  638. Eine ausführliche Auflistung aller Variablen finden sie im Kapitel
  639. Variablebeschreibung.
  640.  
  641.  
  642. Konstanten
  643. ===========
  644.  
  645. Konstanten wurden hauptsächlich für den Typ `Tag' eingeführt. Durch
  646. Kombination der beiden ist es möglich, auf äußerst einfache Weise das
  647. Verhalten von Funktionen zu beeinflussen. Konstanten verhalten sie für
  648. den Benutzer genauso wie Variablen. Der einzige Unterschied ist halt der,
  649. das der Inhalt einer Variablen nach dem Start von WRITE immer gleich
  650. bleibt und das sie nicht geändert werden kann. Von REXX aus können
  651. Konstanten mit dem Befehl GetConst ausgelesen werden.
  652.  
  653.  
  654. ToolTypes
  655. **********
  656.  
  657. Über die Toltypes können einige wichtige Einstellungnen von WRITE gleich
  658. beim Starten von WRITE getätigt werden.
  659.  
  660. Beachten sie, das WRITE, im Gegensatz zum üblichen Vorgehen, seine
  661. ToolTypes *immer* analysiert. D.H., sowohl beim Start von der Workbench,
  662. als auch beim Start aus einer Shell, werden die ToolTypes gelesen.
  663.  
  664. Die ToolTypes und ihre Bedeutung :
  665.  
  666.    * APPMENU Setzt die Variable _AppMenu.
  667.  
  668.    * APPICON Setzt die Variable _AppMenu.
  669.  
  670.    * APPWIN Setzt die Variable _AppWindow.
  671.  
  672.    * SLEEPMODE Setzt die Variable _SleepMode.
  673.  
  674.    * SOUND Setzt die Variable _Sound.
  675.  
  676.    * STDCONFIG Setzt die Variable _DefaultConfig
  677.  
  678.    * GUIDEMODE Ist diese Variable FALSE, so öffnet WRITE beim Hochfahren
  679.      gleich den Hilffile `WRITE.guide'. Ist die Variable TRUE, so wird
  680.      der Guidefile erst exeplizit beim Aufruf der Hilfe geöffnet und
  681.      anschließend wieder geschlossen.
  682.  
  683.      Die erste Methode ist schneller. Der Guide wird einmal geladen und
  684.      steht dann immer schnell da speicherresident zur Verfügung. Der
  685.      Nachteil ist, daß der Guidefile permanent im Speicher gehalten
  686.      wird. Nach groben Schätzungen müßten dies mindesten 300 - 400 KB
  687.      sein. Die zweite Methode ist wesendlich langsamer (auf meinen 68020
  688.      dauert es schon ein paar Sekunden bis AmigaGuide da ist) aber halt
  689.      speicherplatzsparend, da der GuideFile bei jeder Anfrage neu geladen
  690.      wird.
  691.  
  692.  
  693. Sound
  694. ******
  695.  
  696. Neben der Tonausgabe mittels des Befehls Beep unterstützt WRITE in
  697. bestimmten Situationen das Abspielen von Samples über das Programm `Upd'
  698. ((C) Jonas Petersson). Dazu müssen in `Upd.ids' folgende weitere id`s
  699. definiert werden, die dann in den entsprechenden Situationen falls
  700. vorhanden abgespielt werden.
  701.  
  702.    * write_start Wird beim Start von WRITE gespielt.
  703.  
  704.    * write_ask Wird jedesmal, wenn der Ask-Requester erscheint, gespielt.
  705.  
  706.    * write_message Ertönt bei jedem Message-Requester.
  707.  
  708.    * write_getstring Für den GetString-Requester.
  709.  
  710.    * write_getnumber Entsprechend für den GetNumber-Requester.
  711.  
  712.    * write_list Für die List-Requester.
  713.  
  714.    * write_manager Beim Erscheinen des WinManagers
  715.  
  716.    * write_help Wird bei Erscheinen des Help-Requesters gespielt.
  717.  
  718.    * write_about Ebenso für den About-Requester.
  719.  
  720.    * write_getfile FileRequester.
  721.  
  722.    * write_getfont FontRequester.
  723.  
  724.    * write_gprefs Wird beim Öffnen des GlobalPreferences-Requesters
  725.      geöffnet.
  726.  
  727.    * write_prefs Wird beim Öffnen des Preferences-Requesters geöffnet.
  728.  
  729.    * write_end Wird bei Verlassen des Editor gespielt.
  730.  
  731.    * write_macropannel Wird beim Öffnen des MacroPannels gestartet.
  732.  
  733.    * write_getfindreplace Wird beim Öffnen des GetFindReplace-Requesters
  734.      abgespielt.
  735.  
  736.  
  737. Konstantenbeschreibung
  738. ***********************
  739.  
  740.  
  741. TRUE
  742. =====
  743.  
  744. Schreiben    : Nein
  745.  
  746. Beschreibung : Ist immer 1. Dient dazu Variablen, die das Verhalten eines
  747. Schalters haben (0 = AUS, #0 = AN), verständlich einen Wert zuzuweisen.
  748.  
  749.  
  750. FALSE
  751. ======
  752.  
  753. Schreiben    : Nein
  754.  
  755. Beschreibung : Ist immer 0. Dient dazu Variablen, die das Verhalten eines
  756. Schalters haben (0 = AUS, #0 = AN), verständlich einen Wert zuzuweisen.
  757.  
  758.  
  759. LOWER
  760. ======
  761.  
  762. Schreiben    : Nein
  763.  
  764. Beschreibung : Ist immer 1. Möglicher Rückgabewert der Funktion Compare.
  765.  
  766.  
  767. HIGHER
  768. =======
  769.  
  770. Schreiben    : Nein
  771.  
  772. Beschreibung : Ist immer 2. Möglicher Rückgabewert der Funktion Compare.
  773.  
  774.  
  775. EQUAL
  776. ======
  777.  
  778. Schreiben    : Nein
  779.  
  780. Beschreibung : Ist immer 0. Möglicher Rückgabewert der Funktion Compare.
  781.  
  782.  
  783. Variablebeschreibung
  784. *********************
  785.  
  786.  
  787. _AColor
  788. ========
  789.  
  790. Schreiben    : Ja
  791.  
  792. Beschreibung : Setzt die aktuelle Vordergrundfarbe (Farbe der Schrift)
  793. auf die entsprechende Farbnummer (0..MAXCOLOR-1). Die Farben werden
  794. anhand der Reihenfolge im Paletterequester von 0 an aufwärts
  795. durchnummeriert.
  796.  
  797.  
  798. _BColor
  799. ========
  800.  
  801. Schreiben    : Ja
  802.  
  803. Beschreibung : Setzt die aktuelle Hintergrund auf die entsprechende
  804. Farbnummer (0 ... MAXCOLOR-1). Die Farben werden anhand der Reihenfolge
  805. im Paletterequester von 0 an aufwärts durchnummeriert.
  806.  
  807.  
  808. _CColor
  809. ========
  810.  
  811. Schreiben    : Ja
  812.  
  813. Beschreibung : Setzt die aktuelle Vordergrundfarbe (Farbe der Schrift)
  814. für markierten Text auf die entsprechende Farbnummer (0..MAXCOLOR-1). Die
  815. Farben werden anhand der Reihenfolge im Paletterequester von 0 an
  816. aufwärts durchnummeriert.
  817.  
  818.  
  819. _DColor
  820. ========
  821.  
  822. Schreiben    : Ja
  823.  
  824. Beschreibung : Setzt die aktuelle Hintergrundfarbe für markierten Text
  825. auf die entsprechende Farbnummer (0..MAXCOLOR-1). Die Farben werden
  826. anhand der Reihenfolge im Paletterequester von 0 an aufwärts
  827. durchnummeriert.
  828.  
  829.  
  830. _ReadTabs
  831. ==========
  832.  
  833. Schreiben    : Ja
  834.  
  835. Beschreibung : Variable , die angibt, ob beim Einlesen eines Files
  836. gefundene Tabulatoren in die entsprechende Anzahl von Spaces umgewandelt
  837. werden soll. 0=NEIN, ansonsten JA.
  838.  
  839.  
  840. _WriteTabs
  841. ===========
  842.  
  843. Schreiben    : Ja
  844.  
  845. Beschreibung : Variable , die angibt, ob beim Schreiben eines Files
  846. Spaces in Tabulatoren umgewandelt werden sollen. Die Files werden dadurch
  847. kürzer. Doch nicht alle Programme konvertieren Tabulatoren wieder
  848. richtig zurück. 0=NEIN, ansonsten JA.
  849.  
  850.  
  851. _CaseSense
  852. ===========
  853.  
  854. Schreiben    : Ja
  855.  
  856. Beschreibung : Variable, die angibt, ob beim Suchen ein Unterschied
  857. zwischen Groß- und Kleinschreibung gemacht werden soll. 0=NEIN,
  858. ansonsten JA.
  859.  
  860.  
  861. _Optimize
  862. ==========
  863.  
  864. Schreiben    : Ja
  865.  
  866. Beschreibung : Wenn gesetzt, werden beim Abspeichern Spaces hinter dem
  867. letzten Buchstaben einer Zeile gelöscht. 0=NEIN, ansonsten JA.
  868.  
  869.  
  870. _XPos
  871. ======
  872.  
  873. Schreiben    : Nein
  874.  
  875. Beschreibung : Gibt aktuelle Spalte, in der sich der Cursor befindet, an.
  876.  
  877.  
  878. _YPos
  879. ======
  880.  
  881. Schreiben    : Nein
  882.  
  883. Beschreibung : Gibt aktuelle Spalte, in der sich der Cursor befindet, an.
  884.  
  885.  
  886. _Changed
  887. =========
  888.  
  889. Schreiben    : Ja
  890.  
  891. Beschreibung : Wenn ungleich 0, ist der Text seit dem letzten Abspeichern
  892. verändert worden.
  893.  
  894.  
  895. _FileName
  896. ==========
  897.  
  898. Schreiben    : Ja
  899.  
  900. Beschreibung : Beinhaltet den Namen des Textes im aktuellen Ed.
  901.  
  902.  
  903. _FindString
  904. ============
  905.  
  906. Schreiben    : Ja
  907.  
  908. Beschreibung : Zeichenfolge, nach der Find suchen soll.
  909.  
  910.  
  911. _ReplaceString
  912. ===============
  913.  
  914. Schreiben    : Ja
  915.  
  916. Beschreibung : Zeichenfolge, die Replace für ein Vorkommen von
  917. _FindString einsetzten soll.
  918.  
  919.  
  920. _Length
  921. ========
  922.  
  923. Schreiben    : Nein
  924.  
  925. Beschreibung : Länge des Textes in Zeilen.
  926.  
  927.  
  928. _RS
  929. ====
  930.  
  931. Schreiben    : Nein
  932.  
  933. Beschreibung : Variable, in die Funktionen ein eine Variable vom Typ
  934. Zeichenkette zurückgeben.
  935.  
  936.  
  937. _RN
  938. ====
  939.  
  940. Schreiben    : Nein
  941.  
  942. Beschreibung : Nummerischer Rückgabewert von Funktionen.
  943.  
  944.  
  945. _WBStarted
  946. ===========
  947.  
  948. Schreiben    : Nein
  949.  
  950. Beschreibung : Ist `_WBStarted' ungleich null, so ist WRITE von der
  951. Workbench gestartet worden, ansonsten aus einer Shell.
  952.  
  953.  
  954. _LoadTab
  955. =========
  956.  
  957. Schreiben    : Ja
  958.  
  959. Beschreibung : Umrechnungfaktor für die Konvertierung von Tabulatoren zu
  960. Spaces beim Laden eines Textes. Im Zusammenhang mit _SaveTab können
  961. Texte durch Laden und anschließendes Abspeichern von einer
  962. Tabulatorgröße zu einer anderen konvertiert werden.
  963.  
  964.  
  965. _SaveTab
  966. =========
  967.  
  968. Schreiben    : Ja
  969.  
  970. Beschreibung : Umrechnungfaktor für die Konvertierung von Tabulatoren zu
  971. Spaces beim Speichern eines Textes. Im Zusammenhang mit _LoadTab können
  972. Texte durch Laden und anschließendes Abspeichern von einer
  973. Tabulatorgröße zu einer anderen konvertiert werden.
  974.  
  975.  
  976. _Version
  977. =========
  978.  
  979. Schreiben    : Nein
  980.  
  981. Beschreibung : Gibt die Kompatibilitäsversion von WRITE in Form einer
  982. Zahl an.
  983.  
  984.  
  985. _ChipMem
  986. =========
  987.  
  988. Schreiben    : Nein
  989.  
  990. Beschreibung : Momentan verfügbarer CHIP/Graphik-Speicher.
  991.  
  992.  
  993. _FastMem
  994. =========
  995.  
  996. Schreiben    : Nein
  997.  
  998. Beschreibung : Momentan verfügbarer FAST-Speicher.
  999.  
  1000.  
  1001. _PublicMem
  1002. ===========
  1003.  
  1004. Schreiben    : Nein
  1005.  
  1006. Beschreibung : Momentan verfügbarer Gesamt-Speicher.
  1007.  
  1008.  
  1009. _Wins
  1010. ======
  1011.  
  1012. Schreiben    : Nein
  1013.  
  1014. Beschreibung : Anzahl der Momentan verfügbarer CHIP/Graphik-Speicher.
  1015.  
  1016.  
  1017. _Time
  1018. ======
  1019.  
  1020. Schreiben    : Nein
  1021.  
  1022. Beschreibung : Die aktuelle Zeit in Form eines String, der Tagesnamen
  1023. Datum und Zeit beinhaltet.
  1024.  
  1025.  
  1026. _Path
  1027. ======
  1028.  
  1029. Schreiben    : Ja
  1030.  
  1031. Beschreibung : Die Pfad des Filerequesters.
  1032.  
  1033.  
  1034. _FRPattern
  1035. ===========
  1036.  
  1037. Schreiben    : Ja
  1038.  
  1039. Beschreibung : Das Auswahlpattern für den Filerequester.
  1040.  
  1041.  
  1042. _PatCase
  1043. =========
  1044.  
  1045. Schreiben    : Ja
  1046.  
  1047. Beschreibung : Pattern für die Funktion FindPattern.
  1048.  
  1049.  
  1050. _ConfigPath
  1051. ============
  1052.  
  1053. Schreiben    : Ja
  1054.  
  1055. Beschreibung : Das Verzeichnis, in dem WRITE alle Konfigurationsdateien
  1056. sucht.
  1057.  
  1058.  
  1059. _ShowSpace
  1060. ===========
  1061.  
  1062. Schreiben    : Ja
  1063.  
  1064. Beschreibung : Wenn #0, werden Spaces durch das Zeichen `·' angezeigt.
  1065.  
  1066.  
  1067. _ShowEOL
  1068. =========
  1069.  
  1070. Schreiben    : Ja
  1071.  
  1072. Beschreibung : Wenn #0, wird das Ende einer Zeile im Text durch das
  1073. Zeichen `¶' angezeigt.
  1074.  
  1075.  
  1076. _PatNoCase
  1077. ===========
  1078.  
  1079. Schreiben    : Ja
  1080.  
  1081. Beschreibung : Pattern für die Funktion FindPattern.
  1082.  
  1083.  
  1084. _CurrentChar
  1085. =============
  1086.  
  1087. Schreiben    : Nein
  1088.  
  1089. Beschreibung : ASCII-Code des Zeichens unter dem Cursor. 0 wenn kein
  1090. Zeichen.
  1091.  
  1092.  
  1093. _CurrentWord
  1094. =============
  1095.  
  1096. Schreiben    : Nein
  1097.  
  1098. Beschreibung : Das Wort unter dem Cursor. Definition eines Wortes ist
  1099. abhängig vom Inhalt der Variable _WordDef.
  1100.  
  1101.  
  1102. _CurrentLine
  1103. =============
  1104.  
  1105. Schreiben    : Ja
  1106.  
  1107. Beschreibung : Inhalt der aktuellen Zeile.
  1108.  
  1109.  
  1110. _TabLength
  1111. ===========
  1112.  
  1113. Schreiben    : Ja
  1114.  
  1115. Beschreibung : Abstand zwischen Tabulatoren wärend des Editierens. Wird
  1116. von den Funktionen Tab und BackTab benutzt.
  1117.  
  1118.  
  1119. _MaxBuffer
  1120. ===========
  1121.  
  1122. Schreiben    : Nein
  1123.  
  1124. Beschreibung : Zahl der Textbufer minus 1. Textbuffere gehen also von
  1125. 0..`_MaxBuffer'-1.
  1126.  
  1127.  
  1128. _REXX
  1129. ======
  1130.  
  1131. Schreiben    : Nein
  1132.  
  1133. Beschreibung : Wenn #0, so ist REXX installiert und es können
  1134. REXX-Sripte gestartet  werden. (WRITE kontrolliert allerdings nur das
  1135. Vorhandensein von `LIBS:rexxsyslib.library'.)
  1136.  
  1137.  
  1138. _WordDef
  1139. =========
  1140.  
  1141. Schreiben    : Ja
  1142.  
  1143. Beschreibung : Definiert, was WRITE unter einem Wort zu verstehen hat.
  1144. Ist `_WordDef'=0, dann besteht ein Wort nur aus Buchstaben, d.h. `a'-`z',
  1145. `A'-`Z', `_', Umlaute etc. Ist `_WordDef'=1, werden Wörter durch
  1146. sogenannte Trennzeichen getrennt. Trennzeichen sind : ` ', `.', `,', `;',
  1147. `: ', `!', `?', `'',  ``', `(', `)' und `"'. Ist `_WordDef'=2, so werden
  1148. Wörter ausschließlich durch Spaces getrennt.
  1149.  
  1150.  
  1151. _WriteIcon
  1152. ===========
  1153.  
  1154. Schreiben    : Ja
  1155.  
  1156. Beschreibung : Wenn #0, so wird beim Abspeichern auch ein entsprechendes
  1157. Icon kreiert. Siehe auch _OverwriteIcon
  1158.  
  1159.  
  1160. _AppIcon
  1161. =========
  1162.  
  1163. Schreiben    : Ja
  1164.  
  1165. Beschreibung : Wenn #0, so wird auf der Workbench ein AppIcon
  1166. installiert, über welches der WinManager aufgerufen und Texte geladen
  1167. werden können.
  1168.  
  1169.  
  1170. _AppWindow
  1171. ===========
  1172.  
  1173. Schreiben    : Ja
  1174.  
  1175. Beschreibung : Wenn #0, so wird jedes Editorfenster auch zu einem
  1176. AppWindow. D.h. mit dem ziehen von Workbenchicons in dieses Fenster,
  1177. können diese geladen werden.
  1178.  
  1179.  
  1180. _AppMenu
  1181. =========
  1182.  
  1183. Schreiben    : Ja
  1184.  
  1185. Beschreibung : Wenn #0, wird im `Hilfsmittel'menü der Workbench ein
  1186. Menüpunkt installiert, über den man den WinManager aufgerufen und
  1187. selektierte Texte laden kann.
  1188.  
  1189.  
  1190. _Cursor
  1191. ========
  1192.  
  1193. Schreiben    : Ja
  1194.  
  1195. Beschreibung : Je nach Wert wird der Cursor auf verschiedene Weise
  1196. dargestellt.
  1197.  
  1198.  
  1199. _AutoIndent
  1200. ============
  1201.  
  1202. Schreiben    : Ja
  1203.  
  1204. Beschreibung : AutoIndent heißt, das noch einem Return der Cursor
  1205. automatisch nicht am Anfang der Zeile, sondern unter dem ersten
  1206. Buchstaben der Zeile darüber steht. Dies ist besonders paktisch, wenn
  1207. man mit WRITE Programme schreibt, da hier besonders oft mit
  1208. Texteinrückungen gearbeitet wird. `_AutoIndent'  sagt WRITE nun, wie
  1209. wieviele Leerzeilen er rückwärts suchen soll, um nach dem Indent, dem
  1210. Maß der Einrückung, zu suchen. Beispiel : DerCursor steht an der
  1211. Position %.
  1212.         Hier steht ein Text !!!
  1213.      
  1214.      
  1215.                  %
  1216.      1  2
  1217. Ist `_AutoIndent' größer als 2, so steht der Cursor nach einem Return
  1218. an der Position 2, ansonsten an der Position 1. Ist `_AutoIndent'=0, so
  1219. ist dieses Feature abgeschaltet.
  1220.  
  1221.  
  1222. _OverwriteIcon
  1223. ===============
  1224.  
  1225. Schreiben    : Ja
  1226.  
  1227. Beschreibung : Diese Variable gibt an, ob WRITE, wenn _WriteIcon#0 ist,
  1228. ein bestehendes Icon überschreiben soll. Ist `_OverwriteIcon'=0, so wird
  1229. nur, wenn nicht bereits vorhanden, in das bestehende Icon WRITE als
  1230. DefaultTool eingetragen, ansonsten schreibt WRITE sein eigenes Icon.
  1231.  
  1232.  
  1233. _SleepMode
  1234. ===========
  1235.  
  1236. Schreiben    : Ja
  1237.  
  1238. Beschreibung : Ist diese Variable ungleich null, so wird WRITE *nicht*
  1239. beendet, wenn der letzte Ed geschlossen worden ist. Dieser Modus wird
  1240. empfohlen und sollte immer eingeschaltet sein, wenn es der Speicherplatz
  1241. zuläßt.
  1242.  
  1243.  
  1244. _EditMode
  1245. ==========
  1246.  
  1247. Schreiben    : Ja
  1248.  
  1249. Beschreibung : Wenn#0, kann der Text auch verändert werden. Gilt für
  1250. alle Fenster !
  1251.  
  1252.  
  1253. _Marked
  1254. ========
  1255.  
  1256. Schreiben    : Nein
  1257.  
  1258. Beschreibung : Ist `_Marked'=0 so ist weder eine Blockmarke gesetzt, noch
  1259. ein Block markiert. Ist `_Marked'=1, so ist eine Blockmarke gesetzt und
  1260. ist `_Marked'=2, so ist ein Block markiert worden.
  1261.  
  1262.  
  1263. _MarkAx
  1264. ========
  1265.  
  1266. Schreiben    : Nein
  1267.  
  1268. Beschreibung : Spaltennummer der 1. Blockmarke. 0, wenn keine Marke
  1269. gesetzt.
  1270.  
  1271.  
  1272. _MarkAy
  1273. ========
  1274.  
  1275. Schreiben    : Nein
  1276.  
  1277. Beschreibung : Zeilennummer der 1. Blockmarke. 0, wenn keine Marke
  1278. gesetzt.
  1279.  
  1280.  
  1281. _MarkBx
  1282. ========
  1283.  
  1284. Schreiben    : Nein
  1285.  
  1286. Beschreibung : Spaltennummer der 2. Blockmarke. 0, wenn keine Marke
  1287. gesetzt.
  1288.  
  1289.  
  1290. _MarkBy
  1291. ========
  1292.  
  1293. Schreiben    : Nein
  1294.  
  1295. Beschreibung : Zeilennummer der 1. Blockmarke. 0, wenn keine Marke
  1296. gesetzt.
  1297.  
  1298.  
  1299. _WinMode
  1300. =========
  1301.  
  1302. Schreiben    : Ja
  1303.  
  1304. Beschreibung : Hier kann ausgelesen weren, ob der aktuelle Ed ein Fenster
  1305. geöffnet hat (0) (Window), ikonifiziert worden ist(1) (Iconify), kein
  1306. Fenster offen hat  (2) (Hide), oder schließlich ein Fenster offen hat,
  1307. aber die graphische Ausgabe unterdrückt wird (3) (Silent).
  1308.  
  1309.  
  1310. _CurrentID
  1311. ===========
  1312.  
  1313. Schreiben    : Nein
  1314.  
  1315. Beschreibung : ID des aktuellen Eds. Ist der ID 0, so ist kein Ed
  1316. aktiviert.
  1317.  
  1318.  
  1319. _VersionString
  1320. ===============
  1321.  
  1322. Schreiben    : Nein
  1323.  
  1324. Beschreibung : Versionsstring von WRITE.
  1325.  
  1326.  
  1327. _File
  1328. ======
  1329.  
  1330. Schreiben    : Nein
  1331.  
  1332. Beschreibung : Dateiname des aktuellen Textes, ohne kompletten Pfad.
  1333.  
  1334.  
  1335. _FilePath
  1336. ==========
  1337.  
  1338. Schreiben    : Nein
  1339.  
  1340. Beschreibung : Directory des aktuellen Textes.
  1341.  
  1342.  
  1343. _REXXPortName
  1344. ==============
  1345.  
  1346. Schreiben    : Nein
  1347.  
  1348. Beschreibung : Name des globalen REXX-Ports von WRITE.
  1349.  
  1350.  
  1351. _REG1
  1352. ======
  1353.  
  1354. Schreiben    : Ja
  1355.  
  1356. Beschreibung : Variable, die für die eigene Verwendung freigestellt ist.
  1357.  
  1358.  
  1359. _REG2
  1360. ======
  1361.  
  1362. Schreiben    : Ja
  1363.  
  1364. Beschreibung : Variable, die für die eigene Verwendung freigestellt ist.
  1365.  
  1366.  
  1367. _Sound
  1368. =======
  1369.  
  1370. Schreiben    : Ja
  1371.  
  1372. Beschreibung : Wenn #0, so ruft WRITE für einige Requester Upd auf, um
  1373. Samples abzuspielen. Siehe auch Sound.
  1374.  
  1375.  
  1376. _DefaultTool
  1377. =============
  1378.  
  1379. Schreiben    : Ja
  1380.  
  1381. Beschreibung : Bestimmt, was als DefaultTool in Icons abgespeichert
  1382. werden soll. Voreigestellt ist WRITE (inclusive kompletten Pfad) selbst.
  1383.  
  1384.  
  1385. _Language
  1386. ==========
  1387.  
  1388. Schreiben    : Nein
  1389.  
  1390. Beschreibung : Hier steht, auf welche Sprache WRITE eingestellt ist.
  1391.  
  1392.  
  1393. _CurrentConfig
  1394. ===============
  1395.  
  1396. Schreiben    : Nein
  1397.  
  1398. Beschreibung : Der Name der aktuellen Konfiguration. Ist er "", so ist
  1399. keine Konfiguration aktiviert. Eine Konfiguration läßt sich mit
  1400. GetConfig aktivieren.
  1401.  
  1402.  
  1403. _DefaultConfig
  1404. ===============
  1405.  
  1406. Schreiben    : Ja
  1407.  
  1408. Beschreibung : Der Name der Konfiguration, die immer dann benutzt wird,
  1409. wenn expliziet eine bestimmte Konfiguration vorgegeben wird.
  1410.  
  1411.  
  1412. _AutoFree
  1413. ==========
  1414.  
  1415. Schreiben    : Ja
  1416.  
  1417. Beschreibung : Ist diese Variable ungleich Null, so wird eine
  1418. Konfiguration, die von keinem Ed mehr gebraucht wird, automatisch
  1419. freigegeben.
  1420.  
  1421.  
  1422. _WinWidth
  1423. ==========
  1424.  
  1425. Schreiben    : Nein
  1426.  
  1427. Beschreibung : In dieser Variable steht die Breite des aktuellen Fensters
  1428. in Zeichen.
  1429.  
  1430.  
  1431. _WinHeight
  1432. ===========
  1433.  
  1434. Schreiben    : Nein
  1435.  
  1436. Beschreibung : In dieser Variable steht die Höhe des aktuellen Fensters
  1437. in Zeichen.
  1438.  
  1439.  
  1440. _WordWrap
  1441. ==========
  1442.  
  1443. Schreiben    : Ja
  1444.  
  1445. Beschreibung : `_WordWrap' steuert das WordWrapping von WRITE. Ist
  1446. `_WordWrap'=0, so gibt es kein WordWrap. Ist `_WrdWrap'=1, so ertönt ein
  1447. Beepen, wenn der Text einer Zeile über den in _RightMargin angegebenen
  1448. Rand geht. Dies ist ähnlich dem Verhalten einer Schreibmaschine. Ist
  1449. `_WordWrap'=2, so bricht WRITE eine Zeile, wer sie über den Rand geht,
  1450. automatisch um. Der Inhalt der Variable _AutoIndent wird dabei beachtet.
  1451.  
  1452.  
  1453. _RightMargin
  1454. =============
  1455.  
  1456. Schreiben    : Ja
  1457.  
  1458. Beschreibung : Gibt den rechten Rand für die WordWrap-Funktion
  1459. (_WordWrap) an.
  1460.  
  1461.  
  1462. _ScreenWidth
  1463. =============
  1464.  
  1465. Schreiben    : Nein
  1466.  
  1467. Beschreibung : Breiten des aktuellen Screens.
  1468.  
  1469.  
  1470. _ScreenHeight
  1471. ==============
  1472.  
  1473. Schreiben    : Nein
  1474.  
  1475. Beschreibung : Höhe des aktuellen Screens.
  1476.  
  1477.  
  1478. _Undo
  1479. ======
  1480.  
  1481. Schreiben    : Ja
  1482.  
  1483. Beschreibung : Gibt die Größe des Undo-Puffers an. WRITE merkt dich
  1484. alle Veränderungen am Text. `Undo' gibt nun an, wieviele Veränderungen
  1485. er sich behalten soll. Ist `_Undo'=0, so ist die Undo-Funktion
  1486. ausgeschaltet.
  1487.  
  1488.  
  1489. _ScrRelWidth
  1490. =============
  1491.  
  1492. Schreiben    : Ja
  1493.  
  1494. Beschreibung : Wird beim Aufruf des Befehls Window das Tag `@SCREENREL'
  1495. übergeben, so beziehen sich alle Größenangaben nicht auf die reale
  1496. Screengröße sondern auf den hier angegebenen Wert. Dies ist zum
  1497. Beispiel nützlich, wenn ein Script `WINDOW 0 0 0 0' zum öffnen eines
  1498. bildschrimfüllenden Fenster benutzt. Auf großen Bildschirmen ist dies
  1499. aber nicht unbedingt erwünscht. Mit dieser Variablen kann man nun einen
  1500. Screen der angegebenen Größe vortäuschen.
  1501.  
  1502.  
  1503. _ScrRelHeight
  1504. ==============
  1505.  
  1506. Schreiben    : Ja
  1507.  
  1508. Beschreibung : Wird beim Aufruf des Befehls Window das Tag `@SCREENREL'
  1509. übergeben, so beziehen sich alle Größenangaben nicht auf die reale
  1510. Screengröße sondern auf den hier angegebenen Wert. Dies ist zum
  1511. Beispiel nützlich, wenn ein Script `WINDOW 0 0 0 0' zum öffnen eines
  1512. bildschrimfüllenden Fenster benutzt. Auf großen Bildschirmen ist dies
  1513. aber nicht unbedingt erwünscht. Mit dieser Variablen kann man nun einen
  1514. Screen der angegebenen Größe vortäuschen.
  1515.  
  1516.  
  1517. _WordOnly
  1518. ==========
  1519.  
  1520. Schreiben    : Ja
  1521.  
  1522. Beschreibung : Variable, die angibt, ob beim Suchen nur nach ganzen
  1523. Wörtern oder auch nach Wortteilen gesucht werden soll. 0=NEIN, ansonsten
  1524. JA. Die Definition eines Wortes hängt von dem Inhalt der Variable
  1525. _WordDef ab.
  1526.  
  1527.  
  1528. Funktionenbeschreibung
  1529. ***********************
  1530.  
  1531.  
  1532. NOP
  1533. ====
  1534.  
  1535. Aufruf       : NOP
  1536.  
  1537. Benötigt     :
  1538.  
  1539. Setzt Fehler :
  1540.  
  1541. Ergebnisse   :
  1542.  
  1543. Beschreibung : NOP steht für `no operation'. Diese Funktion macht gar
  1544. nichts.
  1545.  
  1546. Siehe auch =>
  1547.  
  1548.  
  1549. Open
  1550. =====
  1551.  
  1552. Aufruf       : Open Dateiname/S
  1553.  
  1554. Benötigt     : Ed
  1555.  
  1556. Setzt Fehler : Ja
  1557.  
  1558. Ergebnisse   : Nein
  1559.  
  1560. Beschreibung : Diese Funktion versucht den Text mit dem angegebenen
  1561. Dateinamen in den aktuellen Ed zu laden. Ist dies nicht möglich, so
  1562. bricht dies Funktion mit einer Fehlermeldung ab. Diese Funktion mach
  1563. keine Sicherheitsabfrage, falls der alte Text verändert sein sollte!
  1564.  
  1565. Siehe auch => GetFile
  1566.  
  1567.  
  1568. Save
  1569. =====
  1570.  
  1571. Aufruf       : Save Dateiname/S Mode/T
  1572.  
  1573. Benötigt     : Ed
  1574.  
  1575. Setzt Fehler : Ja
  1576.  
  1577. Ergebnisse   : Keine
  1578.  
  1579. Beschreibung : Save speichert den Text im aktuellen Ed unter dem
  1580. angegebenen Namen ab. Namensangaben wie `PRT:' zum Drucken sind möglich.
  1581. WRITE restauriert dabei die ursprünglichen Protection-Flags mit Ausnahme
  1582. des Archive-Flags (`A'). Ist in `Mode' `@RAW' gesetzt, werden LF nur bei
  1583. leeren Zeilen abgespeichert. WRITE erzeugt so überlange Zeilen die aus
  1584. jeweils einem ganzen Absatz bestehen. Sehr günstig, falls man den Text
  1585. anschließend in eine Textverarbeitung einlesen will.
  1586.  
  1587. Siehe auch => GetFile
  1588.  
  1589.  
  1590. SetBackUp
  1591. ==========
  1592.  
  1593. Aufruf       : SetBackUp Mode/N Pattern/S To/S
  1594.  
  1595. Benötigt     : Nichts
  1596.  
  1597. Setzt Fehler : Nein
  1598.  
  1599. Ergebnisse   : Nein
  1600.  
  1601. Beschreibung : SetBackUp stellt die verschiedenen BackUpmodi von WRITE
  1602. ein. BackUp bedeutet, daß, wenn ein Text unter einem Dateinamen, der
  1603. bereits existiert, abgespeichert werden soll, von der bereits bestehenden
  1604. Datei eine Sicherheitskopie gemacht wird. Momentan gibt es 3 Modi :
  1605.  
  1606.   1. Modus 0 : Entspricht die Datei dem angegebenen DOS-Pattern, so wird
  1607.      sie als angegebe Datei `To' umbenannt bzw. kopiert.
  1608.  
  1609.   2. Modus 1 : Entspricht die Datei dem Pattern, so wird die angegebene
  1610.      Endung angehangen.
  1611.  
  1612.   3. Modus 2 : Entspricht die Datei dem Pattern, so wird sie in das
  1613.      angegebene Directory kopiert.
  1614.  
  1615. WRITE vergleicht die Pattern in absteigender Reihenfolge, d.h. 2... 1...0.
  1616.  
  1617. Siehe auch =>
  1618.  
  1619.  
  1620. New
  1621. ====
  1622.  
  1623. Aufruf       : New
  1624.  
  1625. Benötigt     : Ed
  1626.  
  1627. Setzt Fehler : Nein
  1628.  
  1629. Ergebnisse   : Nein
  1630.  
  1631. Beschreibung : New löscht den aktuellen Text unwiederruflich. Eine
  1632. eingebaute Sicherheitsabfrage gibt es dabei nicht.
  1633.  
  1634. Siehe auch =>
  1635.  
  1636.  
  1637. NewEd
  1638. ======
  1639.  
  1640. Aufruf       : NewEd Konfiguration/S
  1641.  
  1642. Benötigt     : Nichts
  1643.  
  1644. Setzt Fehler : Ja
  1645.  
  1646. Ergebnisse   : Ja
  1647.  
  1648. Beschreibung : `NewEd' öffnet einen neuen Ed mit dem angegebenen
  1649. Konfigurationsfile. Wird als Konfigurationsfile `""' angegeben, so wird
  1650. der _DefaultConfig benutzt. Kann der Konfigurationfile nicht gefunden
  1651. werden, oder tritt beim Parsen ein Fehler auf, so bricht `NewEd' ab und
  1652. gibt einen Fehler zurück.
  1653.  
  1654. Siehe auch => Der Ed
  1655.  
  1656.  
  1657. QuitEd
  1658. =======
  1659.  
  1660. Aufruf       : QuitEd
  1661.  
  1662. Benötigt     : Ed
  1663.  
  1664. Setzt Fehler : Nein
  1665.  
  1666. Ergebnisse   : Nein
  1667.  
  1668. Beschreibung : Die Funktion schließt den aktuellen Ed, den dazugehörigen
  1669. Text sowie, wenn geöffnet, das Fenster. Eine Sicherheitsabfrage gibt es
  1670. nicht
  1671.  
  1672. Siehe auch => NewEd
  1673.  
  1674.  
  1675. Window
  1676. =======
  1677.  
  1678. Aufruf       : Window dx1/N dy1/N dx2/N dy2/N Tags/T
  1679.  
  1680. Benötigt     : Ed
  1681.  
  1682. Setzt Fehler : Ja
  1683.  
  1684. Ergebnisse   : Nein
  1685.  
  1686. Beschreibung : Window öffnet für den aktuellen Ed ein Fenster mit den
  1687. angegebenen Maßen. Dabei steht (x1,y1) für die linke obere Ecke relativ
  1688. zur linken oberen Ecke des Bildschirms und (x2/y2) für die rechte untere
  1689. Ecke relativ zur rechten unteren Ecke.
  1690.      Window  0  0  0  0
  1691. öffnet ein Fenster über den ganzen Screen.
  1692.      WINDOW 50 50 50 50
  1693. öffnet ein Fenster, dessen Seiten jeweils 50 Pixel vom Bildschirmrand
  1694. entfernt sind. Hatte der Ed schon einmal ein geöffnetes Fenster, so
  1695. werden dessen Maße benutzt. Konnte das Fenster nicht geöffnet werden,
  1696. so wird ein Fehler zurückgegeben.
  1697.  
  1698. Ist in Tags das `@SCREENREL' gesetzt, so beziehen sich die
  1699. Größenangaben nicht auf die tatsächliche Screengröße sondern auf einen
  1700. Screen der bei _ScrRelWidth und _ScrRelHeight angegebenen Größe. Dies
  1701. ist nützlich für übergroße Screen wie man sie bei Grafikkarten
  1702. besitzt.
  1703.  
  1704. Siehe auch => Iconify, Hide, Silent
  1705.  
  1706.  
  1707. Iconify
  1708. ========
  1709.  
  1710. Aufruf       : Iconify
  1711.  
  1712. Benötigt     : Ed
  1713.  
  1714. Setzt Fehler : Ja
  1715.  
  1716. Ergebnisse   : Nein
  1717.  
  1718. Beschreibung : Schließt ein eventuell vorhandenes Fenster und öffnet ein
  1719. iconifiziertes Fenster für den aktuellen Ed. Dieses ist ein kleines
  1720. Fenster mit einen Schließsymbol in der rechten, oberen Ecke des Screens.
  1721. Betätigt man dieses Schließsymbol, so wird wieder ein Fenster der alten
  1722. Größe geöffnet. Mehere Icons werden untereinander plaziert. Kann das
  1723. Iconfenster nicht geöffnet werden, so wird ein Fehler zurückgegeben.
  1724.  
  1725. Siehe auch => Window, Hide, Silent
  1726.  
  1727.  
  1728. Hide
  1729. =====
  1730.  
  1731. Aufruf       : Hide
  1732.  
  1733. Benötigt     : Ed
  1734.  
  1735. Setzt Fehler : Nein
  1736.  
  1737. Ergebnisse   : Nein
  1738.  
  1739. Beschreibung : Schließt das Icon oder Fenster des aktuellen Eds. Der
  1740. Text ist *nicht* verloren, er besitzt nur kein Fenster mehr. Es gibt
  1741. mehrere Möglichkeiten das Fenster wieder zu öffnen :
  1742.   1. Über den WinManager
  1743.  
  1744.   2. In dem REXX-Script , das in den Hidemodus geschaltet hat, mittels
  1745.      Window oder Iconify (Da die Befehle an das aktuelle Fenster gehen !)
  1746.  
  1747.   3. Oder ähnlich über den PrivatePort (dessen Namen man über OpenPort
  1748.      bekommen hat, oder den man mit dem ID, der von NewEd zurückgegeben
  1749.      wird, öffnet.
  1750.  
  1751. Siehe auch => Window, Iconify, Silent
  1752.  
  1753.  
  1754. Silent
  1755. =======
  1756.  
  1757. Aufruf       : Silent
  1758.  
  1759. Benötigt     : Ed
  1760.  
  1761. Setzt Fehler : Nein
  1762.  
  1763. Ergebnisse   : Nein
  1764.  
  1765. Beschreibung : Das Fenster des aktuellen Ed (wenn er eins geöffnet hat)
  1766. wird in den Silentmode geschaltet. D.h., daß alle graphischen Ausgaben
  1767. unterdrückt werden. Einige Funktionen wie z.B. Replace erreichen so ein
  1768. vielfaches ihrer Geschwindigkeit.
  1769.  
  1770. Siehe auch => Window, Iconify, Hide
  1771.  
  1772.  
  1773. Font
  1774. =====
  1775.  
  1776. Aufruf       : Font Name/S yGröße/N DiskFont/N
  1777.  
  1778. Benötigt     : Nichts
  1779.  
  1780. Setzt Fehler : Ja
  1781.  
  1782. Ergebnisse   : Nein
  1783.  
  1784. Beschreibung : Der Text im Editierfenster wird in dem angegebenen Font
  1785. dargestellt. `Name' und `yGröße' stehen dabei für den Namen und die
  1786. Höhe des Textes. Ist `DiskFont'#0, so wird der Font von Diskette geladen,
  1787. ansonsten wird er im ROM gesucht. Kann der Font nicht gefunden
  1788. werden,wird ein Fehler zurückgegeben
  1789.  
  1790. Siehe auch => GetFont
  1791.  
  1792.  
  1793. WinArranger
  1794. ============
  1795.  
  1796. Aufruf       : WinArranger Tags/T
  1797.  
  1798. Benötigt     : Nichts
  1799.  
  1800. Setzt Fehler : Nein
  1801.  
  1802. Ergebnisse   : Nein
  1803.  
  1804. Beschreibung : WinArranger versucht alle geöffneten Fenster
  1805. übersichtlich und flächendeckend auf dem Screen zu plazieren. Momentan
  1806. wird nur ein Mode unterstützt : Alle offenen Fenster werden
  1807. untereinander plaziert und nach vorne gebracht.
  1808.  
  1809. Siehe auch =>
  1810.  
  1811.  
  1812. SetTitle
  1813. =========
  1814.  
  1815. Aufruf       : SetTitle Titel/S NoHold/N
  1816.  
  1817. Benötigt     : Ed
  1818.  
  1819. Setzt Fehler : Nein
  1820.  
  1821. Ergebnisse   : Nein
  1822.  
  1823. Beschreibung : SetTitle setzt den Fenstertitel aud `Titel'. Die Flags und
  1824. Positionsangaben bleiben dabei sichtbar. Ist `NoHold'=0, so wird der
  1825. Titel nach Ausführung der aktuellen Befehlsfolge gelöscht, ansonsten
  1826. nicht.
  1827.  
  1828. Siehe auch =>
  1829.  
  1830.  
  1831. Screen
  1832. =======
  1833.  
  1834. Aufruf       : Screen Data/S Titel/S Flags/T
  1835.  
  1836. Benötigt     : Konfiguration
  1837.  
  1838. Setzt Fehler : Ja
  1839.  
  1840. Ergebnisse   : Nein
  1841.  
  1842. Beschreibung : `Screen' gibt an, auf welchem Screen eine Konfiguration
  1843. ihre Fenster öffnen soll. Momentan werden nur fremde PublicScreen
  1844. unterstützt. Dabei ist `Titel' der Name des PublicScreens. In Flags muß
  1845. `@PUBLIC' gesetzt sein.
  1846.  
  1847. Der neue Screen gilt erst für alle *neu* geöffneten Screen. `Screen'
  1848. sollte deshalb schon bereits im Konfigurationsfile aufgerufen werden.
  1849.  
  1850. Kann `Screen' auf einen Screen nicht zugreifen, so wird der
  1851. "DefaultPublicScreen" benutzt. Dies ist meißtens die Workbench.
  1852. Außerdem gibt `Screen' dann einen Fehler zurück.
  1853.  
  1854. Es sollte hier noch einmal außdrücklich erwähnt werden, daß WRITE sich
  1855. völlig an die Gegebenheiten eines beliebigen Screens anpaßt. Dies sind
  1856. vor allem die Auflösung, so wie der eingestellte Zeichensatz des Screens.
  1857. Alle Fenster und Requester von WRITE sind fontsensitiv und passen sich
  1858. sogar Proportionalfonts problemlos an.
  1859.  
  1860. Siehe auch =>
  1861.  
  1862.  
  1863. About
  1864. ======
  1865.  
  1866. Aufruf       : About
  1867.  
  1868. Benötigt     : Nichts
  1869.  
  1870. Setzt Fehler : Nein
  1871.  
  1872. Ergebnisse   : Nein
  1873.  
  1874. Beschreibung : About öffnet ein kleines Fenster, in dem die
  1875. Versionsnummer, mein Name und meine Adresse, sowie ein kleiner Hinweis in
  1876. Sachen Raubkopien und dem legalen Besitz von Originalen stehen.
  1877.  
  1878. Siehe auch => Copyright, Vollversion
  1879.  
  1880.  
  1881. Prefs
  1882. ======
  1883.  
  1884. Aufruf       : Prefs
  1885.  
  1886. Benötigt     : Ed
  1887.  
  1888. Setzt Fehler : Nein
  1889.  
  1890. Ergebnisse   : Nein
  1891.  
  1892. Beschreibung : Hier kann man einige konfigurationsspezifische
  1893. Einstellungen temporär ändern. Bitte beachten sie, daß die hier
  1894. gemachten Einstellungen nicht in den Konfigurationsfile übernommen
  1895. werden !
  1896.  
  1897. Siehe auch => GPrefs
  1898.  
  1899.  
  1900. GPrefs
  1901. =======
  1902.  
  1903. Aufruf       : GPrefs
  1904.  
  1905. Benötigt     : Nichts
  1906.  
  1907. Setzt Fehler : Nein
  1908.  
  1909. Ergebnisse   : Nein
  1910.  
  1911. Beschreibung : Hier kann man einige globale Einstellungen temporär
  1912. ändern.
  1913.  
  1914. Siehe auch => Prefs
  1915.  
  1916.  
  1917. Help
  1918. =====
  1919.  
  1920. Aufruf       : Help
  1921.  
  1922. Benötigt     : Nichts
  1923.  
  1924. Setzt Fehler : Nein
  1925.  
  1926. Ergebnisse   : Nein
  1927.  
  1928. Beschreibung : Help öffnet ein kleines Fenster mit verschieden Gadgets
  1929. über die einige weitere Hilfrequester geöffnet werden können.
  1930.  
  1931. Siehe auch => ShowVars, ShowFunctions, ShowASCII
  1932.  
  1933.  
  1934. WinManager
  1935. ===========
  1936.  
  1937. Aufruf       : WinManager
  1938.  
  1939. Benötigt     : Nichts
  1940.  
  1941. Setzt Fehler : Nein
  1942.  
  1943. Ergebnisse   : Nein
  1944.  
  1945. Beschreibung : WinManager öffnet ein Fenster mit einem Listrequester, in
  1946. dem alle geöffneten Eds gezeigt werden. Da bei bedeutet die erste Zahl
  1947. der ID, ein anschließendes Sternchen zeigt an, daß der Text verändert
  1948. wurde, und ein abschließendes `h', `i', `s' gibt an, ob sich der Ed im
  1949. Hiden-, Iconify- oder im Silent-Mode befindet. Der Eintrag schließt mit
  1950. dem Dateinamen des aktuellen Textes ab. Mit den darunter angebrachten
  1951. Gadgets kann der Requester wieder verlassen, ein neues Fenster geöffnet,
  1952. ein selektierter Ed gezeigt, oder, falls kein Ed vorhanden, WRITE
  1953. verlassen werden. Ein Eintrag kann durch anklicken mit der Maus, oder
  1954. über die CursorUp bzw. CursorDown Tasten selektiert werden.
  1955.  
  1956. die Taste `Neues Fenster' führt bei Selektion die Userfunktion 2 aus.
  1957. Damit läßt sich konfigurieren, was für ein Fenster (Konfiguration,
  1958. Größe) geöffnet werden soll.
  1959.  
  1960. Siehe auch =>
  1961.  
  1962.  
  1963. ShowVars
  1964. =========
  1965.  
  1966. Aufruf       : ShowVars
  1967.  
  1968. Benötigt     : Nichts
  1969.  
  1970. Setzt Fehler : Nein
  1971.  
  1972. Ergebnisse   : Nein
  1973.  
  1974. Beschreibung : Öffnet ein Fenster mit einem Listgadget, in dem alle
  1975. internen Variablen mit ihren Namen sowie dem aktuellen Wert stehen.
  1976.  
  1977. Siehe auch => HelpFkt, ShowFunctions, ShowASCII, ShowConstants
  1978.  
  1979.  
  1980. ShowFunctions
  1981. ==============
  1982.  
  1983. Aufruf       : ShowFunctions
  1984.  
  1985. Benötigt     : Nichts
  1986.  
  1987. Setzt Fehler : Nein
  1988.  
  1989. Ergebnisse   : Nein
  1990.  
  1991. Beschreibung : Eine Liste mit allen internen Funktionen samt ihrer
  1992. Parameter.
  1993.  
  1994. Siehe auch => HelpFkt, ShowVars, ShowASCII, ShowConstants
  1995.  
  1996.  
  1997. ShowConstants
  1998. ==============
  1999.  
  2000. Aufruf       : ShowConstants
  2001.  
  2002. Benötigt     : Nichts
  2003.  
  2004. Setzt Fehler : Nein
  2005.  
  2006. Ergebnisse   : Nein
  2007.  
  2008. Beschreibung : Eine Liste mit allen internen Konstanten.
  2009.  
  2010. Siehe auch => HelpFkt, ShowVars, ShowASCII, ShowFunctions
  2011.  
  2012.  
  2013. ShowASCII
  2014. ==========
  2015.  
  2016. Aufruf       : ShowASCII
  2017.  
  2018. Benötigt     : Nichts
  2019.  
  2020. Setzt Fehler : Nein
  2021.  
  2022. Ergebnisse   : Nein
  2023.  
  2024. Beschreibung : Öffnet ein Fenster mit einem Listgadget, in dem alle
  2025. dastellbaren Zeichen samt ihrer ASCIInummer in dezimaler Schreibweise
  2026. stehen. Diese Nummern können dann z.B. als Parameter für WriteChar
  2027. übergeben werden.
  2028.  
  2029. Siehe auch => WriteChar, HelpFkt, ShowFunctions, ShowVars, ShowConstants
  2030.  
  2031.  
  2032. ShowIndex
  2033. ==========
  2034.  
  2035. Aufruf       : ShowIndex Pattern/S Flags/T
  2036.  
  2037. Benötigt     : Ed
  2038.  
  2039. Setzt Fehler : Nein
  2040.  
  2041. Ergebnisse   : Nein
  2042.  
  2043. Beschreibung : Sucht im gesamten Text nach dem angegebenen DOS-Pattern.
  2044. Wenn `@CASE' in `Flags' gesetzt ist, so wird dabei zwischen Groß- und
  2045. Kleinschreibung unterschieden. Wenn `@NOCASE' gesetzt ist , nicht.
  2046. Ansonsten wird die Preferenceseinstellung benutzt. Anschließend werden
  2047. alle Zeilen, in den das Pattern gefunden wurde, in einem Requester mit
  2048. ihrer Zeilennummer angezeigt. Durch Selektion einer Zeile kann dann zu
  2049. dieser gesprungen werden. Für Oberon/Modula2-Programmierer ist zum
  2050. Beispiel nützlich :
  2051.      ShowIndex "#?PROCEDURE#?" 1
  2052.  
  2053. Siehe auch =>
  2054.  
  2055.  
  2056. GetString
  2057. ==========
  2058.  
  2059. Aufruf       : GetString Title/S Vorbelegung/S
  2060.  
  2061. Benötigt     : Nichts
  2062.  
  2063. Setzt Fehler : Ja
  2064.  
  2065. Ergebnisse   : Ja
  2066.  
  2067. Beschreibung : `GetString' öffnet einen Requester mit dem angegebenen
  2068. Titel und einem Stringgadget mit dem angegebenen Inhalt. Wird im
  2069. Stringgadget RETURN gedrückt oder das Bestätigungsgadget betätigt, so
  2070. wird in der Variablen _RS der eingegebene String zurückgegeben.
  2071. Andernfalls wird die Abarbeitung abgebrochen.
  2072.  
  2073. Siehe auch => GetNumber
  2074.  
  2075.  
  2076. GetNumber
  2077. ==========
  2078.  
  2079. Aufruf       : GetNumber Titel/S Vorbelegung/N
  2080.  
  2081. Benötigt     : Nichts
  2082.  
  2083. Setzt Fehler : Ja
  2084.  
  2085. Ergebnisse   : Ja
  2086.  
  2087. Beschreibung : `GetNumber' öffnet einen Requester mit dem angegebenen
  2088. Titel und einem Integergadget mit dem angegebenen Inhalt. Wird im
  2089. Integergadget RETURN gedrückt oder das Bestätigungsgadget betätigt, so
  2090. wird in der Variablen _RN die eingegebene Zahl zurückgegeben.
  2091. Andernfalls wird die Abarbeitung abgebrochen.
  2092.  
  2093. Siehe auch => GetString
  2094.  
  2095.  
  2096. GetFindReplace
  2097. ===============
  2098.  
  2099. Aufruf       : GetFindReplace FindWord/S ReplaceWord/S Flags/T
  2100.  
  2101. Benötigt     : Nichts
  2102.  
  2103. Setzt Fehler : Ja
  2104.  
  2105. Ergebnisse   : Nein
  2106.  
  2107. Beschreibung : `GetFindReplace' öffnet einen Requester in dem
  2108. kompfortabel die Variablen `_FINDSTRING', _CASESENSE und, falls
  2109. `@REPLACE' in `Flags' gesetzt ist, auch die Variable `_REPLACESTRING'
  2110. gesetzt werden können. Drückt man in einen der beiden StringGadgets die
  2111. HELP-Taste, so öffnet sich ein ListRequester, über den man eins der
  2112. vorher eingebenen Wörter selektieren kann.
  2113.  
  2114. Siehe auch => Find, Replace, FindPattern
  2115.  
  2116.  
  2117. GetFile
  2118. ========
  2119.  
  2120. Aufruf       : GetFile Typ/T
  2121.  
  2122. Benötigt     : Nichts
  2123.  
  2124. Setzt Fehler : Ja
  2125.  
  2126. Ergebnisse   : Ja
  2127.  
  2128. Beschreibung : `GetFile' öffnet einen Filerequester mit dem Inhalt der
  2129. Variable _PATH. Ist in `Typ' `@SAVE' gesetzt, so wird ein
  2130. Save-Filerequester benutzt. Wird eine Datei selektiert, so wird der
  2131. dazugehörige Dateiname in der Variablen _PATH zurückgegeben.
  2132. Andernfalls wird die Abarbeitung abgebrochen.
  2133.  
  2134. Siehe auch =>
  2135.  
  2136.  
  2137. GetFont
  2138. ========
  2139.  
  2140. Aufruf       : GetFont
  2141.  
  2142. Benötigt     : Nichts
  2143.  
  2144. Setzt Fehler : Ja
  2145.  
  2146. Ergebnisse   : Nein
  2147.  
  2148. Beschreibung : `GetFont' öffnet einen Fontrequester. Wird ein Font
  2149. selektiert, so wird versucht, diesen als neuen Font für die
  2150. Textdarstellung zu benutzen. Wird kein Font selektiert, oder kann dieser
  2151. nicht geladen dargestellt etc. werden, wird die Abarbeitung abgebrochen.
  2152.  
  2153. Siehe auch =>
  2154.  
  2155.  
  2156. Ask
  2157. ====
  2158.  
  2159. Aufruf       : Ask Title/S Gadgets/S Flags/T
  2160.  
  2161. Benötigt     : Nichts
  2162.  
  2163. Setzt Fehler : Nein
  2164.  
  2165. Ergebnisse   : Ja
  2166.  
  2167. Beschreibung : `Ask' öffnet einen Requester mit `Title' als Text und den
  2168. in `Gadgets' beschriebenen Gadgets als mögliche Antwort. Ist in Flags
  2169. das Tag `@VERT' gesetzt, so wird rechts neben dem Text die Gadgeliste
  2170. vertikal erzeugt, sonst horzontal unter dem Text.
  2171.  
  2172. Die Beschreibung der Gadgets folgt folgender Konvention: Die Gadgettitel
  2173. werden hintereinander aufgelistet und durch das Zeichen `|' von einander
  2174. getrennt. Mittels eines Unterstriches im Titel kann der nächste
  2175. Buchstabe als Tastaturkürzel markiert werden. Ein `^' bedeutet, daß
  2176. dieses Gadget auch über die Esacape-Taste selectiert werden kann. Dieses
  2177. Gadget sollte demnach für einen Abruch oder für das sichere Verlassen
  2178. des Requester stehen. Ein `*' bedeutet, daß dieses Gadget auch mit
  2179. RETURN beantwortet werden kann. Dieses Gadget sollte also für die
  2180. Standardbeanwortung stehen.
  2181.  
  2182. Die Gadgets werden von Links nach Rechts von 0 aufwärts durchnummeriert.
  2183. `Ask' gibt in _RN die Nummer des selektierten Gadgets zurück. Ein
  2184. Beispiel:
  2185.      Ask "Dies ist ein Test !!!" "Echt _super man ! *|_Nicht so toll ^"
  2186.  
  2187. Siehe auch =>
  2188.  
  2189.  
  2190. Message
  2191. ========
  2192.  
  2193. Aufruf       : Message Text/S
  2194.  
  2195. Benötigt     : Nichts
  2196.  
  2197. Setzt Fehler : Nein
  2198.  
  2199. Ergebnisse   : Nein
  2200.  
  2201. Beschreibung : Message öffnet einen Requester mit dem angegebenen Text.
  2202. Nach kurzer Zeit verschwindet der Requester wieder.
  2203.  
  2204. Siehe auch => MessageOK
  2205.  
  2206.  
  2207. MessageOK
  2208. ==========
  2209.  
  2210. Aufruf       : MessageOK Text/S
  2211.  
  2212. Benötigt     : Nichts
  2213.  
  2214. Setzt Fehler : Nein
  2215.  
  2216. Ergebnisse   : Nein
  2217.  
  2218. Beschreibung : Funktioniert wie Message, nur das hier die Meldung erst
  2219. durch ein Gadget bestätigt werden muß bevor sie verschwindet.
  2220.  
  2221. Siehe auch => Message
  2222.  
  2223.  
  2224. Flash
  2225. ======
  2226.  
  2227. Aufruf       : Flash
  2228.  
  2229. Benötigt     : Nichts
  2230.  
  2231. Setzt Fehler : Nein
  2232.  
  2233. Ergebnisse   : Nein
  2234.  
  2235. Beschreibung : Läßt den Bildschirm einmal aufblinken.
  2236.  
  2237. Siehe auch => Beep
  2238.  
  2239.  
  2240. Beep
  2241. =====
  2242.  
  2243. Aufruf       : Beep Deep/N
  2244.  
  2245. Benötigt     : Nichts
  2246.  
  2247. Setzt Fehler : Nein
  2248.  
  2249. Ergebnisse   : Nein
  2250.  
  2251. Beschreibung : `Beep' erzeugt einen kurzen Ton. Ist `Deep'=0, dann ist
  2252. der Ton relativ hoch, sonst tief.
  2253.  
  2254. Siehe auch => Flash
  2255.  
  2256.  
  2257. ParseBuffer
  2258. ============
  2259.  
  2260. Aufruf       : ParseBuffer /Nummer/N
  2261.  
  2262. Benötigt     : Nichts
  2263.  
  2264. Setzt Fehler : Ja
  2265.  
  2266. Ergebnisse   : Nein
  2267.  
  2268. Beschreibung : `ParseBuffer' behandelt den Text in dem Puffer mit der
  2269. angegebenen Nummer als WRITE-Script und prüft es auf seine syntaktische
  2270. Richtigkeit ohne es dabei jedoch auszuführen. Eventuell auftretende
  2271. Fehler werden wie üblich im Textfenster gemeldet. Sind Fehler
  2272. aufgetreten, so wird dementsprechend von der Funktion ein Fehler
  2273. zurückgegeben.
  2274.  
  2275. Diese Funktion ist sinnvoll, wenn man Teile des Konfigurationsfiles
  2276. ändert, und sie anschließend auf ihre Richtigkeit überprüfen will.
  2277.  
  2278. Siehe auch => DoBuffer, DoString
  2279.  
  2280.  
  2281. DoBuffer
  2282. =========
  2283.  
  2284. Aufruf       : DoBuffer Nummer/N
  2285.  
  2286. Benötigt     : Nichts
  2287.  
  2288. Setzt Fehler : Ja
  2289.  
  2290. Ergebnisse   : Nein
  2291.  
  2292. Beschreibung : Führt den angegebenen Puffer als WRITE-Script aus. Treten
  2293. dabei Fehler auf, so gibt die Funktion ebenfalls einen Fehler aus.
  2294.  
  2295. Siehe auch => ParseBuffer, DoString
  2296.  
  2297.  
  2298. DoString
  2299. =========
  2300.  
  2301. Aufruf       : DoString String/S
  2302.  
  2303. Benötigt     : Nichts
  2304.  
  2305. Setzt Fehler : Ja
  2306.  
  2307. Ergebnisse   : Nein
  2308.  
  2309. Beschreibung : Führt den angegebenen String als WRITE-Script aus.
  2310. Natürlich gibt auch diese Funktion dabei auftretene Fehler als Fehler
  2311. zurück.
  2312.  
  2313. Siehe auch => ParseBuffer, DoBuffer
  2314.  
  2315.  
  2316. SetUserFkt
  2317. ===========
  2318.  
  2319. Aufruf       : SetUserFkt Nummer/N Funktionsliste/F
  2320.  
  2321. Benötigt     : Nichts
  2322.  
  2323. Setzt Fehler : Nein
  2324.  
  2325. Ergebnisse   : Nein
  2326.  
  2327. Beschreibung : Userfunktionen sind Stellen im internen Ablauf, wo der
  2328. Benutzer konfigurierent eingreifen kann. Momentan gibt es folgende
  2329. Userfunktionen:
  2330.  
  2331. 0 : Diese Funktion wird für jeden Commandlineparameter einmal aufgerufen.
  2332. Der Parameter steht dabei in der Variable _RS. Diese Funktion sollte ein
  2333. Fenster öffnen und die angegebene Textdatei laden.
  2334.  
  2335. 1 : Diese Funktion wird aufgerufen, wenn das Schließ-Gadget eines
  2336. Fenster angeklickt wird. Die Funktion sollte eventuell eine
  2337. Sicherheitsabfrage machen und anschließend das Fenster schließen.
  2338.  
  2339. 2 : Diese Funktion wird bei Selektion des Gadgets `Neues Fenster' im
  2340. WinManager aufgerufen. Sie sollte ein Editorfenster öffnen.
  2341.  
  2342. Für Beispiele hierzu schauen sie bitte in die Konfigurationsdateien.
  2343.  
  2344. Siehe auch =>
  2345.  
  2346.  
  2347. Compare
  2348. ========
  2349.  
  2350. Aufruf       : Compare String1/S String2 /S
  2351.  
  2352. Benötigt     : Nichts
  2353.  
  2354. Setzt Fehler : Nein
  2355.  
  2356. Ergebnisse   : Ja
  2357.  
  2358. Beschreibung : Vergleicht die beiden Strings und gibt je nach Ergebnis
  2359. die Werte LOWER,HIGHER oder EQUAL in _RN zurück. Da Zahlen bei der
  2360. Übergabe automatisch in Zeichenketten umgewandelt werden, kann man mit
  2361. dieser Funktion auch Zahlen untereinander als auch Zahlen und
  2362. Zeichenketten miteinander vergleichen.
  2363.  
  2364. Siehe auch => If, Break
  2365.  
  2366.  
  2367. If
  2368. ===
  2369.  
  2370. Aufruf       : If Command/F Then/F Else/F
  2371.  
  2372. Benötigt     : Nichts
  2373.  
  2374. Setzt Fehler : Nein
  2375.  
  2376. Ergebnisse   : Nein
  2377.  
  2378. Beschreibung : `If' führt die angegebene Funktionsliste `Command' aus.
  2379. Gibt diese Funktion keinen Fehler zurück und ist _RN=0, so wird die
  2380. Funktionsliste `Then' ausgeführt, ansonsten die Funktionsliste `Else'.
  2381.  
  2382. Siehe auch => Break
  2383.  
  2384.  
  2385. Break
  2386. ======
  2387.  
  2388. Aufruf       : Break Compare/N String1/S String2/S
  2389.  
  2390. Benötigt     : Nichts
  2391.  
  2392. Setzt Fehler : Ja
  2393.  
  2394. Ergebnisse   : Nein
  2395.  
  2396. Beschreibung : `Break' vergleicht `String1' und `String2' Und stellt, das
  2397. sie gleich (EQUAL), `String1' kleiner als `String2' (LOWER) oder größer
  2398. (EQUAL) ist. Ist nun `Compare' gleich dem Resultat, so gibt `Break' einen
  2399. Fehler zurück und die aktuelle Befehlsfolge wird abgebrochen. Beispiel :
  2400.      Break EQUAL "Hallo" "Hallo"
  2401.      Break LOWER 255 13
  2402. Das erste Beispiel bricht ab, das Zweite nicht.
  2403.  
  2404. Siehe auch => If
  2405.  
  2406.  
  2407. SetVar
  2408. =======
  2409.  
  2410. Aufruf       : SetVar Variable/S Wert/S
  2411.  
  2412. Benötigt     : Nichts
  2413.  
  2414. Setzt Fehler : Ja
  2415.  
  2416. Ergebnisse   : Nein
  2417.  
  2418. Beschreibung : Setzt den Inhalt der einer internen Variable auf den Wert
  2419. `Wert'. `Variable' ist dabei der gequotete Name der Variable. Existiert
  2420. die Variable nichts, so wird ein Fehler zurückgegeben. Beispiel :
  2421.      SetEnv "_FileName" "s:startup-sequence"
  2422. Setzt den Dateinamen des aktuellen Textes auf `s:startup-sequence'.
  2423.  
  2424. Siehe auch => GetVar
  2425.  
  2426.  
  2427. GetVar
  2428. =======
  2429.  
  2430. Aufruf       : GetVar Variable/S
  2431.  
  2432. Benötigt     : Nichts
  2433.  
  2434. Setzt Fehler : Ja
  2435.  
  2436. Ergebnisse   : Ja
  2437.  
  2438. Beschreibung : Liest den Wert der Variablen `Variable' aus und schreibt
  2439. ihn als String in die Variable _RS. Existiert die angegebene Variable
  2440. nicht, so wird ein Fehler zurückgegeben.
  2441.  
  2442. Siehe auch => SetVar
  2443.  
  2444.  
  2445. GetConst
  2446. =========
  2447.  
  2448. Aufruf       : GetConst Konstante/S
  2449.  
  2450. Benötigt     : Nichts
  2451.  
  2452. Setzt Fehler : Ja
  2453.  
  2454. Ergebnisse   : Ja
  2455.  
  2456. Beschreibung : Liest den Wert der Konstante `Konstante' aus und schreibt
  2457. ihn als String in die Variable _RS. Existiert die angegebene Konstante
  2458. nicht, so wird ein Fehler zurückgegeben.
  2459.  
  2460. Siehe auch => SetVar
  2461.  
  2462.  
  2463. SetEnv
  2464. =======
  2465.  
  2466. Aufruf       : SetEnv Variable/S Wert/S
  2467.  
  2468. Benötigt     : Nichts
  2469.  
  2470. Setzt Fehler : Ja
  2471.  
  2472. Ergebnisse   : Nein
  2473.  
  2474. Beschreibung : Setzt den Wert einer globalen DOS-Enviromentvariabeln auf
  2475. den Wert `Wert'.
  2476.  
  2477. Siehe auch =>
  2478.  
  2479.  
  2480. GetEnv
  2481. =======
  2482.  
  2483. Aufruf       : GetEnv Variable/S
  2484.  
  2485. Benötigt     : Nichts
  2486.  
  2487. Setzt Fehler : Ja
  2488.  
  2489. Ergebnisse   : Ja
  2490.  
  2491. Beschreibung : Ließt den Wert der angegebenen Dos-Enviromentvariabeln
  2492. aus und schreibt ihn in die Variable _RS
  2493.  
  2494. Siehe auch =>
  2495.  
  2496.  
  2497. System
  2498. =======
  2499.  
  2500. Aufruf       : System Befehl/S Flags/T
  2501.  
  2502. Benötigt     : Nichts
  2503.  
  2504. Setzt Fehler : Ja
  2505.  
  2506. Ergebnisse   : Nein
  2507.  
  2508. Beschreibung : System startet einen Befehl (mit Argumenten). Ist `@ASYNC'
  2509. ind `Flags' gesetzt, so wird der Befehl im Hintergrund gestartet. D.h.,
  2510. daß mit WRITE während das Programm läuft, weiter gearbeitet werden
  2511. kann. Ansonsten wartet WRITE darauf, daß das Programm beendet wird. Aus
  2512. leicht einsichtigen Gründen, kann nur ein Fehler zurückgegeben werden,
  2513. wenn `@ASYNC' nicht gesetzt ist.
  2514.  
  2515. Siehe auch =>
  2516.  
  2517.  
  2518. SetMark
  2519. ========
  2520.  
  2521. Aufruf       : SetMark
  2522.  
  2523. Benötigt     : Ed
  2524.  
  2525. Setzt Fehler : Nein
  2526.  
  2527. Ergebnisse   : Nein
  2528.  
  2529. Beschreibung : Setzt den Anfang bzw. das Ende eines Blockes,welcher dann
  2530. mit `Cut', `Copy' ... bearbeitet werden kann. Setzt mann zum ersten Mal
  2531. eine Marke, so verändert sich der Mauszeiger in ein Visier (???) und ein
  2532. `M' erscheint bei den Flags in der Titelzeile. Desweiteren ist ein
  2533. zeichengroßes Kästen unter dem Cursor zu sehen. Man ist im Mark-Modus.
  2534. Dieser bleibt solange erhalten , wie man nicht auf irgendeine Art einen
  2535. Zeilenumbruch tätigt. Nun kann mit den gleichen Verfahren das Ende des
  2536. Blockes gewählt werden. Ist das Ende des Blockes vor dem Anfang, so
  2537. werden Anfangs- und Endmarken automatisch vertauscht. Ist dies getan, so
  2538. wird der Block als Ganzes farblich hervorgehoben. Der Block ist markiert
  2539. und bleibt dies auch, bis ein Zeilenumbruch durchgeführt wurde. Nun kann
  2540. der Block mit den Blockfunktionen bearbeitet werden.
  2541.  
  2542. Mit einen Doppelklick mit der linken Maustaste ist es z.B. möglich
  2543. Marken zu setzen.
  2544.  
  2545. Siehe auch => UnMark
  2546.  
  2547.  
  2548. UnMark
  2549. =======
  2550.  
  2551. Aufruf       : UnMark
  2552.  
  2553. Benötigt     : Ed
  2554.  
  2555. Setzt Fehler : Nein
  2556.  
  2557. Ergebnisse   : Nein
  2558.  
  2559. Beschreibung : `UnMark' löscht den markierten Block. Diese Funktion wird
  2560. auch aufgerufen, wenn der rechte Mausknopf gedrückt wurde, ohne ein
  2561. Menü auszuwählen.
  2562.  
  2563. Siehe auch => SetMark
  2564.  
  2565.  
  2566. DeleteBlock
  2567. ============
  2568.  
  2569. Aufruf       : DeleteBlock
  2570.  
  2571. Benötigt     : Ed
  2572.  
  2573. Setzt Fehler : Ja
  2574.  
  2575. Ergebnisse   : Nein
  2576.  
  2577. Beschreibung : Löscht den markierten Block. Ist kein Block markiert, so
  2578. wird mit einem Fehler abgebrochen.
  2579.  
  2580. Siehe auch => CopyBlock, InsertBlock
  2581.  
  2582.  
  2583. CopyBlock
  2584. ==========
  2585.  
  2586. Aufruf       : CopyBlock Puffernummer/N
  2587.  
  2588. Benötigt     : Ed
  2589.  
  2590. Setzt Fehler : Ja
  2591.  
  2592. Ergebnisse   : Nein
  2593.  
  2594. Beschreibung : Kopiert den markierten Block in den angegebenen
  2595. Zwischenspeicher. Ist kein Block markiert, so wird mit einem Fehler
  2596. abgebrochen.
  2597.  
  2598. Siehe auch => DeleteBlock, InsertBlock
  2599.  
  2600.  
  2601. InsertBlock
  2602. ============
  2603.  
  2604. Aufruf       : InsertBlock Puffernummer/S
  2605.  
  2606. Benötigt     : Ed
  2607.  
  2608. Setzt Fehler : Ja
  2609.  
  2610. Ergebnisse   : Nein
  2611.  
  2612. Beschreibung : Fügt den Inhalt des angegebenen Blocks an der aktuellen
  2613. Cursorposition in den Text ein. Ist der angegebene Block leer, so wird
  2614. mit einem Fehler abgebrochen.
  2615.  
  2616. Siehe auch => CopyBlock, DeleteBlock
  2617.  
  2618.  
  2619. SaveBuffer
  2620. ===========
  2621.  
  2622. Aufruf       : SaveBuffer Dateiname/S Puffernummer/N
  2623.  
  2624. Benötigt     : Nichts
  2625.  
  2626. Setzt Fehler : Ja
  2627.  
  2628. Ergebnisse   : Nein
  2629.  
  2630. Beschreibung : Speichert den Inhalt des angegebenen Puffers als Datei mit
  2631. dem Namen `Dateiname' ab. Treten beim Abspeichern Fehler auf, so wird mit
  2632. einem Fehler abgebrochen. Achtung ! Die Einstellungsmöglichkeiten für
  2633. Textfiles, wie z.B. die Abspeicherung von Tabs, gelten hier nicht.
  2634. Blöcke werden immer im Standard-ADSCII-Format abgespeichert.
  2635.  
  2636. Siehe auch => LoadBuffer
  2637.  
  2638.  
  2639. LoadBuffer
  2640. ===========
  2641.  
  2642. Aufruf       : LoadBuffer Dateiname/S Puffernummer/N
  2643.  
  2644. Benötigt     : Nichts
  2645.  
  2646. Setzt Fehler : Ja
  2647.  
  2648. Ergebnisse   : Nein
  2649.  
  2650. Beschreibung : Läd die Datei `Dateiname' in den angegebenen Block.
  2651. Treten beim Laden Fehler auf, so wird mit einem Fehler abgebrochen.
  2652. Achtung ! Die Einstellungsmöglichkeiten für Textfiles, wie z.B. die
  2653. Abspeicherung von Tabs, gelten hier nicht. Blöcke werden immer im
  2654. Standard-ADSCII-Format abgespeichert.
  2655.  
  2656. Siehe auch => SaveBuffer
  2657.  
  2658.  
  2659. ClearBuffer
  2660. ============
  2661.  
  2662. Aufruf       : ClearBuffer Puffernummer/N
  2663.  
  2664. Benötigt     : Nichts
  2665.  
  2666. Setzt Fehler : Nein
  2667.  
  2668. Ergebnisse   : Nein
  2669.  
  2670. Beschreibung : Löscht den angegebenen Puffer.
  2671.  
  2672. Siehe auch =>
  2673.  
  2674.  
  2675. ClipToBuffer
  2676. =============
  2677.  
  2678. Aufruf       : ClipToBuffer Puffernummer/N Clipboardnummer/N
  2679.  
  2680. Benötigt     : `iffparse.library'
  2681.  
  2682. Setzt Fehler : Ja
  2683.  
  2684. Ergebnisse   : Nein
  2685.  
  2686. Beschreibung : Kopiert den Inhalt des angebenen Clipboarddevices in eine
  2687. internen Puffer. Für weitere Informationen über die Funktion und die
  2688. Arbeitsweise des Clipboarddevices schauen sie bitte in die Handbücher,
  2689. die sie mit ihrem Amiga erhalten haben.
  2690.  
  2691. Siehe auch => BufferToClip
  2692.  
  2693.  
  2694. BufferToClip
  2695. =============
  2696.  
  2697. Aufruf       : BufferToClip Puffernummer/N Clipboardnummer/N
  2698.  
  2699. Benötigt     : `iffparse.library'
  2700.  
  2701. Setzt Fehler : Ja
  2702.  
  2703. Ergebnisse   : Nein
  2704.  
  2705. Beschreibung : Kopiert den angegeben internen Puffer in ein
  2706. Clipboarddevice. Für weitere Informationen über die Funktion und die
  2707. Arbeitsweise des Clipboarddevices schauen sie bitte in die Handbücher,
  2708. die sie mit ihrem Amiga erhalten haben.
  2709.  
  2710. Siehe auch => BufferToClip
  2711.  
  2712.  
  2713. BlockLeft
  2714. ==========
  2715.  
  2716. Aufruf       : BlockLeft x/N
  2717.  
  2718. Benötigt     : Ed
  2719.  
  2720. Setzt Fehler : Nein
  2721.  
  2722. Ergebnisse   : Nein
  2723.  
  2724. Beschreibung : Verschiebt den markierten Block als Ganzes um `x' Zeichen
  2725. nach links.
  2726.  
  2727. Siehe auch => BlockRight
  2728.  
  2729.  
  2730. BlockRight
  2731. ===========
  2732.  
  2733. Aufruf       : BlockRight x/N
  2734.  
  2735. Benötigt     : Ed
  2736.  
  2737. Setzt Fehler : Nein
  2738.  
  2739. Ergebnisse   : Nein
  2740.  
  2741. Beschreibung : Verschiebt den markierten Block als Ganzes um `x' Zeichen
  2742. nach rechts.
  2743.  
  2744. Siehe auch => BlockRight
  2745.  
  2746.  
  2747. BlockLftAlig
  2748. =============
  2749.  
  2750. Aufruf       : BlockLftAlig Spalte/N
  2751.  
  2752. Benötigt     : Ed
  2753.  
  2754. Setzt Fehler : Nein
  2755.  
  2756. Ergebnisse   : Nein
  2757.  
  2758. Beschreibung : Versucht alle Zeilen im markierten Block linksbündig auf
  2759. die angegebene Spalte auszurichten.
  2760.  
  2761. Siehe auch => BlockRghtAlig
  2762.  
  2763.  
  2764. BlockRghtAlig
  2765. ==============
  2766.  
  2767. Aufruf       : BlockRghtAlig Spalte/N
  2768.  
  2769. Benötigt     : Ed
  2770.  
  2771. Setzt Fehler : Nein
  2772.  
  2773. Ergebnisse   : Nein
  2774.  
  2775. Beschreibung : Versucht alle Zeilen im markierten Block rechtsbündig auf
  2776. die angegebene Spalte auszurichten.
  2777.  
  2778. Siehe auch =>
  2779.  
  2780.  
  2781. BlockCenter
  2782. ============
  2783.  
  2784. Aufruf       : Diese Funktion ist noch nicht implementiert
  2785.  
  2786. Benötigt     :
  2787.  
  2788. Setzt Fehler :
  2789.  
  2790. Ergebnisse   :
  2791.  
  2792. Beschreibung :
  2793.  
  2794. Siehe auch =>
  2795.  
  2796.  
  2797. CursorUp
  2798. =========
  2799.  
  2800. Aufruf       : CursorUp Mode/N
  2801.  
  2802. Benötigt     : Ed
  2803.  
  2804. Setzt Fehler : Ja
  2805.  
  2806. Ergebnisse   : Nein
  2807.  
  2808. Beschreibung : Ist `Mode'=0, so wird der Cursor einfach eine Zeile nach
  2809. oben bewegt. Ist `Mode'=1, so wird der Cursor ebenfalls eine Zeile nach
  2810. oben bewegt und, falls der Cursor dann hinter dem letzten Zeichen in
  2811. dieser Zeile steht, einen Buchstaben hinter dem Ende der Zeile
  2812. positioniert. Steht der Cursor bereits in der ersten Zeile, so wird ein
  2813. Fehler zurückgegeben.
  2814.  
  2815. Siehe auch =>
  2816.  
  2817.  
  2818. CursorDown
  2819. ===========
  2820.  
  2821. Aufruf       : CursorDown Mode/N
  2822.  
  2823. Benötigt     : Ed
  2824.  
  2825. Setzt Fehler : Ja
  2826.  
  2827. Ergebnisse   : Nein
  2828.  
  2829. Beschreibung : Funktioniert wie CursorUp, nur daß der Cursor eine Zeile
  2830. nach unten bewegt wird.
  2831.  
  2832. Siehe auch =>
  2833.  
  2834.  
  2835. CursorRight
  2836. ============
  2837.  
  2838. Aufruf       : CursorRight Mode/N
  2839.  
  2840. Benötigt     : Ed
  2841.  
  2842. Setzt Fehler : Ja
  2843.  
  2844. Ergebnisse   : Nein
  2845.  
  2846. Beschreibung : Ist `Mode'=0, so wird der Cursor eine Stelle nach rechts
  2847. bewegt. Ist `Mode'=1, so wird der Cursor ebenfalls eine Stelle nach rechts
  2848. bewegt. Steht er dann jedoch hinter dem letzten Zeichen der Zeile,
  2849. springt er an der Anfang der nächsten. Existiert diese nicht, so wird
  2850. ein Fehler zurückgegeben.
  2851.  
  2852. Siehe auch =>
  2853.  
  2854.  
  2855. CursorLeft
  2856. ===========
  2857.  
  2858. Aufruf       : CursorLeft
  2859.  
  2860. Benötigt     : Ed
  2861.  
  2862. Setzt Fehler : Ja
  2863.  
  2864. Ergebnisse   : Ja
  2865.  
  2866. Beschreibung :  Ist `Mode'=0, so wird der Cursor eine Stelle nach links
  2867. bewegt. Steht der Cursor bereits in der ersten Spalte, so wird ein Fehler
  2868. zurückgegeben. Ist `Mode'=1, so wird der Cursor ebenfalls eine Stelle
  2869. nach links bewegt. Steht er jedoch in der ersten Spalte der Zeile,
  2870. springt er ans Ende der letzten. Existiert diese nicht, so wird ein
  2871. Fehler zurückgegeben.
  2872.  
  2873. Siehe auch =>
  2874.  
  2875.  
  2876. NextWord
  2877. =========
  2878.  
  2879. Aufruf       : NextWord
  2880.  
  2881. Benötigt     : Ed
  2882.  
  2883. Setzt Fehler : Ja
  2884.  
  2885. Ergebnisse   : Nein
  2886.  
  2887. Beschreibung : Springt zum nächsten Wort. Die aktuelle Wortdefinition
  2888. wird durch den Inhalt der Variable _WORDDEF angegeben. Schauen sie für
  2889. weitere Information bitte dort nach. Kann keine nächstes Word gefunden
  2890. werden, so gibt `NextWord' einen Fehler zurück.
  2891.  
  2892. Siehe auch => LastWord
  2893.  
  2894.  
  2895. LastWord
  2896. =========
  2897.  
  2898. Aufruf       : LastWord
  2899.  
  2900. Benötigt     : Ed
  2901.  
  2902. Setzt Fehler : Ja
  2903.  
  2904. Ergebnisse   : Nein
  2905.  
  2906. Beschreibung : Springt zum nächsten Wort. Die aktuelle Wortdefinition
  2907. wird durch den Inhalt der Variable _WORDDEF angegeben. Schauen sie für
  2908. weitere Information bitte dort nach. Kann keine vorheriges Wort gefunden
  2909. werden, so gibt `NextWord' einen Fehler zurück.
  2910.  
  2911. Siehe auch => NextWord
  2912.  
  2913.  
  2914. PageUp
  2915. =======
  2916.  
  2917. Aufruf       : PageUp Percent/N
  2918.  
  2919. Benötigt     : Ed
  2920.  
  2921. Setzt Fehler : Nein
  2922.  
  2923. Ergebnisse   : Nein
  2924.  
  2925. Beschreibung : Blättert `Percent' Prozent einer dargestellten Seite nach
  2926. oben. Beispiel :
  2927.      PageUp 75
  2928. Blättert 75% der dargestellten Seite nach oben. Bei einem Fenster von
  2929. z.B. 30 Zeilen sind dies 21 Zeilen.
  2930.  
  2931. Siehe auch => PageDown
  2932.  
  2933.  
  2934. PageDown
  2935. =========
  2936.  
  2937. Aufruf       : PageDown Percent/N
  2938.  
  2939. Benötigt     : Ed
  2940.  
  2941. Setzt Fehler : Nein
  2942.  
  2943. Ergebnisse   : Nein
  2944.  
  2945. Beschreibung : Blättert `Percent' Prozent einer dargestellten Seite nach
  2946. unten. Beispiel :
  2947.      PageDown 75
  2948. Blättert 75% der dargestellten Seite nach unten. Bei einem Fenster von
  2949. z.B. 30 Zeilen sind dies 21 Zeilen.
  2950.  
  2951. Siehe auch => PageUp
  2952.  
  2953.  
  2954. Goto
  2955. =====
  2956.  
  2957. Aufruf       : Goto x/N y/N
  2958.  
  2959. Benötigt     : Ed
  2960.  
  2961. Setzt Fehler : Nein
  2962.  
  2963. Ergebnisse   : Nein
  2964.  
  2965. Beschreibung : Goto springt, wenn vorhanden zur x. Zeile und y. Spalte.
  2966. Dabei werden auch Positionsangaben mittels der Konstanten `@CURSOR' bis
  2967. `@EOT' unterstützt.
  2968.  
  2969. Siehe auch =>
  2970.  
  2971.  
  2972. SetTextMark
  2973. ============
  2974.  
  2975. Aufruf       : SetTextMark Nummer/N
  2976.  
  2977. Benötigt     : Ed
  2978.  
  2979. Setzt Fehler : Nein
  2980.  
  2981. Ergebnisse   : Nein
  2982.  
  2983. Beschreibung : `SetTextMark' setzt in der aktuellen Zeile eine (nämliche
  2984. Nummer `Nummer') temporäre Marke. Beachten sie bitte, daß sich WRITE
  2985. nur die Zeilennummer merkt, so daß nach Veränderungen im Text die Marke
  2986. auf die falsche Stelle zeigt.
  2987.  
  2988. Siehe auch => GoTextMark
  2989.  
  2990.  
  2991. GoTextMark
  2992. ===========
  2993.  
  2994. Aufruf       : GoTextMark Nummer/N
  2995.  
  2996. Benötigt     : Ed
  2997.  
  2998. Setzt Fehler : Nein
  2999.  
  3000. Ergebnisse   : Nein
  3001.  
  3002. Beschreibung : Springt zur angegebenen Textmarke.
  3003.  
  3004. Siehe auch => SetTextMark
  3005.  
  3006.  
  3007. Find
  3008. =====
  3009.  
  3010. Aufruf       : Find VonX/N VonY/N BisX/N BisY/N Mode/T
  3011.  
  3012. Benötigt     : Ed
  3013.  
  3014. Setzt Fehler : Ja
  3015.  
  3016. Ergebnisse   : Nein
  3017.  
  3018. Beschreibung : `Find' sucht ab der aktuellen Cursorposition nach den
  3019. Inhalt der Variable _FindString. Ist der Inhalt der Variable _CaseSense
  3020. ungleich 0, so unterscheidet `Find' dabei zwischen Groß- und
  3021. Kleinschreibung, ansonsten nicht. Kann das gesuchte Wort nicht gefunden
  3022. werden, so wird ein Fehler zurückgegeben.
  3023.  
  3024. Ist der Inhalt der Variable _WordDef ungleich 0, so sucht `Find' nur nach
  3025. ganzen Wörtern, ansonsten auch nach Wortteilen. Die Definition eines
  3026. Wortes hängt von dem Inhalt der Variable _WordDef ab.
  3027.  
  3028. Kann das gesuchte Wort nicht gefunden werden, so wird ein Fehler
  3029. zurückgegeben.
  3030.  
  3031. Ist in `Mode' `@SILENT' gesetzt, so wird das Nichtfinden des Wortes nicht
  3032. mittels eines Requesters angezeigt.
  3033.  
  3034. Mittels der Tags `@CASE', `@NOCASE', `@WORD' und `@NOWORD' kann der Wert
  3035. der Variablen _CaseSense und _WordDef für diesen Funktionaufruf direkt
  3036. geändert werden, ohne daß globale Einstellungen verändert werden.
  3037.  
  3038. Über die Variablen VonX/Y und BisX/Y kann der Textbereich angegeben
  3039. werden, auf den sich die Suche beziehen soll. `@CURSOR @CURSOR @EOT @EOT'
  3040. steht z.B. für die Suche von der Cursorposition bis zum Ende des Textes.
  3041. `@MARKA @MARKA @MARKB @MARKB' für die Suche in dem markierten Block.
  3042.  
  3043. Bechten sie, daß, wenn VonX/Y gleich der Cursorposition ist, `Find' aus
  3044. einsichtigen Gründen erst ab den nachfolgenden Buchstaben sucht.
  3045.  
  3046. Siehe auch => Replace, FindPattern
  3047.  
  3048.  
  3049. Replace
  3050. ========
  3051.  
  3052. Aufruf       : Replace VonX/N VonY/N BisX/N BisY/N Mode/T
  3053.  
  3054. Benötigt     : Ed
  3055.  
  3056. Setzt Fehler : Ja
  3057.  
  3058. Ergebnisse   : Nein
  3059.  
  3060. Beschreibung : `Replace' sucht nach dem unter Find angegebenen Schema
  3061. nach dem angegebenen Wort und ersetzt es durch den Inhalt der Variable
  3062. _ReplaceString.
  3063.  
  3064. Ist `@NOREQ' nicht in `Mode'gesetzt, so wird vorher ein Requester
  3065. geöffnet, in dem das Ersetzen explizit bestätigt werden muß.
  3066.  
  3067. Ist auch hier in `Mode' `@SILENT' gesetzt, so wird das Nichtfinden des
  3068. Wortes nicht mittels eines Requesters angezeigt.
  3069.  
  3070. Ist `@ALL' gesetzt, so ersetzt die Funktion nicht nur das nächste
  3071. Vorkommen, sonndern alle Vorkommen bis des Ende des Textes erreicht ist
  3072. oder die Suche abgebrochen wurde.
  3073.  
  3074. Ist bei gesetztem `@ALL' `@NOREQ' nicht in `Mode'gesetzt, so wird bei
  3075. jedem gefundenen Wort ein Requester geöffnet, in dem man `Replace'
  3076. abbrechen kann, das aktuelle Wort uberspringen oder ersetzten kann.
  3077.  
  3078. Für die Parameter VonX/Y, BisX/Y sowie weitere Tags sehen sie Bitte bei
  3079. der Beschreibung der Funktion Find nach.
  3080.  
  3081. Siehe auch => Find, FindPattern
  3082.  
  3083.  
  3084. FindPattern
  3085. ============
  3086.  
  3087. Aufruf       : FindPattern Flags/T
  3088.  
  3089. Benötigt     : Ed
  3090.  
  3091. Setzt Fehler : Ja
  3092.  
  3093. Ergebnisse   : Nein
  3094.  
  3095. Beschreibung : Sucht ab der aktuellen Zeile nach dem DOS-Pattern, welches
  3096. in der Variable _PatCase bzw. _PatNoCase angegeben ist. Dies hängt davon
  3097. ab, ob `@CASE' oder `@NOCASE' in `Flags' angegeben wird. Wird kein von
  3098. beiden angegeben, so wird die aktuelle Preferenceseinstellung benutzt.
  3099. Durch das setzten von `@SILENT' kann die Meldung des Nichtfindens des
  3100. Patterns abgeschaltet werden.
  3101.  
  3102. Wichtig : `FindPattern' such ab der aktuellen Zeile, nicht ab der
  3103. Cursorposition. Ist in der aktuellen Zeile das Suchmuster gefunden
  3104. worden, so muß man erst eine Zeile tiefer gehen, da `FindPattern' sonst
  3105. wieder zur aktuellen Zeile springen würde.
  3106.  
  3107. Siehe auch => Find, Replace
  3108.  
  3109.  
  3110. MatchBracket
  3111. =============
  3112.  
  3113. Aufruf       : MatchBracket
  3114.  
  3115. Benötigt     : Ed
  3116.  
  3117. Setzt Fehler : Nein
  3118.  
  3119. Ergebnisse   : Nein
  3120.  
  3121. Beschreibung : `MatchBracket' sucht zu dem Zeichen unter dem Cursor das
  3122. konjugierte. Unterstützt werden folgende Paare : `('`)', `{'`}', `['`]',
  3123. `<'`>', `«'`»'. `MatchBracket' unterstützt dabei auch
  3124. Verschachtelungen. Im folgenden Beispiel springt `MatchBracket', wenn der
  3125. Cursor auf dem ersten Zeichen steht, zum letzten :
  3126.      {
  3127.        {
  3128.          /* Dies ist ein Test */
  3129.          arg[0]:=0;
  3130.        }
  3131.      }
  3132. Desweiteren wird für die folgenden Zeichen, zum nächsten Vorkommen
  3133. gesprungen : ', `, ".
  3134.  
  3135. Siehe auch =>
  3136.  
  3137.  
  3138. Return
  3139. =======
  3140.  
  3141. Aufruf       : Return
  3142.  
  3143. Benötigt     : Ed
  3144.  
  3145. Setzt Fehler : Nein
  3146.  
  3147. Ergebnisse   : Nein
  3148.  
  3149. Beschreibung : Bricht die aktuelle Zeile an der Cursorposition um.
  3150. Beispiel :
  3151.        sadlkjsadf asf gra htrhtrzrtgre
  3152.                            ^
  3153.                            Cursor
  3154.      
  3155.       wird zu...
  3156.      
  3157.        sadlkjsadf asf gra h
  3158.      trhtrzrtgre
  3159.  
  3160. Siehe auch => _AutoIndent
  3161.  
  3162.  
  3163. Delete
  3164. =======
  3165.  
  3166. Aufruf       : Delete
  3167.  
  3168. Benötigt     : Ed
  3169.  
  3170. Setzt Fehler : Nein
  3171.  
  3172. Ergebnisse   : Nein
  3173.  
  3174. Beschreibung : Löscht das Zeichen unter dem Cursor. Steht der Cursor
  3175. hinter dem letzten Zeichen einer Zeile, so wird die nächste Zeile in die
  3176. Aktuelle geholt.
  3177.  
  3178. Siehe auch =>
  3179.  
  3180.  
  3181. DeleteToEOL
  3182. ============
  3183.  
  3184. Aufruf       : DeleteToEOL
  3185.  
  3186. Benötigt     : Ed
  3187.  
  3188. Setzt Fehler : Nein
  3189.  
  3190. Ergebnisse   : Nein
  3191.  
  3192. Beschreibung : `DeleteToEOL' löscht die aktuelle Zeile von der aktuellen
  3193. Cursorposition bis zum Ende der Zeile.
  3194.  
  3195. Siehe auch => Delete, DeleteLine, UnDelLine, DeleteWord
  3196.  
  3197.  
  3198. DeleteLine
  3199. ===========
  3200.  
  3201. Aufruf       : DeleteLine
  3202.  
  3203. Benötigt     : Ed
  3204.  
  3205. Setzt Fehler : Nein
  3206.  
  3207. Ergebnisse   : Nein
  3208.  
  3209. Beschreibung : `DeleteLine' löscht die aktuelle Zeile. Die zuletzt
  3210. gelöschte Zeile kann kann mit UnDelLine wieder eingefügt werden.
  3211.  
  3212. Siehe auch => Delete, DeleteToEOL, UnDelLine, DeleteWord
  3213.  
  3214.  
  3215. UnDelLine
  3216. ==========
  3217.  
  3218. Aufruf       : UnDelLine
  3219.  
  3220. Benötigt     : Ed
  3221.  
  3222. Setzt Fehler : Nein
  3223.  
  3224. Ergebnisse   : Nein
  3225.  
  3226. Beschreibung : `UnDelLine' fügt die zuletzt mit DeleteLine gelöschte
  3227. Zeile wieder über dder aktuellen ein.
  3228.  
  3229. Siehe auch => Delete, DeleteToEOL, DeleteLine, DeleteWord
  3230.  
  3231.  
  3232. DeleteWord
  3233. ===========
  3234.  
  3235. Aufruf       : DeleteWord
  3236.  
  3237. Benötigt     : Ed
  3238.  
  3239. Setzt Fehler : Nein
  3240.  
  3241. Ergebnisse   : Nein
  3242.  
  3243. Beschreibung : Lösch, wenn vorhanden, das aktuelle Wort unter dem Cursor.
  3244. Die Definition eines Wortes hängt dabei vom Inhalt der Variable _WordDef
  3245. ab.
  3246.  
  3247. Siehe auch => Delete, DeleteToEOL, DeleteLine, UnDelLine
  3248.  
  3249.  
  3250. BackSpace
  3251. ==========
  3252.  
  3253.  
  3254. Tab
  3255. ====
  3256.  
  3257. Aufruf       : Tab Mode/N
  3258.  
  3259. Benötigt     : Ed
  3260.  
  3261. Setzt Fehler : Nein
  3262.  
  3263. Ergebnisse   : Nein
  3264.  
  3265. Beschreibung : `Tab' springt zur nächsten Tabulatormarke. Diese sind
  3266. gerade _TabLength Zeichen von einander entfehrnt. Ist Mode=0, so springt
  3267. nur der Cursor zum Tabulator. Ist Mode=1 so der Text unter dem Cursor bis
  3268. zum Tabulator bewegt.
  3269.  
  3270. Siehe auch => BackTab
  3271.  
  3272.  
  3273. BackTab
  3274. ========
  3275.  
  3276. Aufruf       : BackTab
  3277.  
  3278. Benötigt     : Ed
  3279.  
  3280. Setzt Fehler : Nichts
  3281.  
  3282. Ergebnisse   : Nichts
  3283.  
  3284. Beschreibung : `BackTab' springt zur vorherigen Tabulatormarke. Diese
  3285. sind gerade _TabLength Zeichen von einander entfehrnt.
  3286.  
  3287. Siehe auch =>
  3288.  
  3289.  
  3290. UpperBlock
  3291. ===========
  3292.  
  3293. Aufruf       : UpperBlock Von/N Bis/N
  3294.  
  3295. Benötigt     : Ed
  3296.  
  3297. Setzt Fehler : Nein
  3298.  
  3299. Ergebnisse   : Nein
  3300.  
  3301. Beschreibung : Konvertiert alle Buchstaben im angebenen Textbereich in
  3302. Großbuchstaben. Dabei werden auch internationale Zeichen je nach der
  3303. aktuellen Ländereinstellung des Betriebssystems berücksichtigt.
  3304.  
  3305. Die Positionen werden dabei mittels der Konstanten `@CURSOR' bis `@EOT'
  3306. angegeben.
  3307.  
  3308. Siehe auch => LowerBlock
  3309.  
  3310.  
  3311. LowerBlock
  3312. ===========
  3313.  
  3314. Aufruf       : LowerBlock Von/N Bis/N
  3315.  
  3316. Benötigt     :
  3317.  
  3318. Setzt Fehler :
  3319.  
  3320. Ergebnisse   :
  3321.  
  3322. Beschreibung : Konvertiert alle Buchstaben im angegebenen Textbereich zu
  3323. Kleinbuchstaben. Dabei werden auch internationale Zeichen je nach der
  3324. aktuellen Ländereinstellung des Betriebssystems berücksichtigt.
  3325.  
  3326. Die Positionen werden dabei mittels der Konstanten `@CURSOR' bis `@EOT'
  3327. angegeben.
  3328.  
  3329. Siehe auch => UpperBlock
  3330.  
  3331.  
  3332. WriteChar
  3333. ==========
  3334.  
  3335. Aufruf       : WriteChar DecimalCode/N
  3336.  
  3337. Benötigt     : Ed
  3338.  
  3339. Setzt Fehler : Nein
  3340.  
  3341. Ergebnisse   : Nein
  3342.  
  3343. Beschreibung : WriteChar schreibt das Zeichen mit dem ASCII-Code
  3344. `DecimalCode' an die aktuelle CursorPosition. Das Zeichen geht dabei an
  3345. die gleiche Routine die auch für die über die Tastatur eingegebenen
  3346. Zeichen zuständig ist. D. h. alle nicht dastellbaren Zeichen, werden
  3347. auch nicht gedruckt. Diese Funktion ist auch völlig unabhängig von der
  3348. aktuellen Tastaturbelegung. Ist `A' mit einer Funktion belegt, so wird
  3349. `WriteChar 65' dennoch ein `A' schreiben.
  3350.  
  3351. Siehe auch => WriteText
  3352.  
  3353.  
  3354. WriteText
  3355. ==========
  3356.  
  3357. Aufruf       : WriteText Zeichenkette/S
  3358.  
  3359. Benötigt     : Ed
  3360.  
  3361. Setzt Fehler : Nein
  3362.  
  3363. Ergebnisse   : Nein
  3364.  
  3365. Beschreibung : WriteText funktioniert genauso wie WriteChar. Nur wird
  3366. hier ein ganzer String ausgegeben. Auch hier weren nicht dastellbare
  3367. Zeichen herausgefiltert. Die Möglichkeit der Angabe von Steuersequencen
  3368. in der Zeichenkette besteht also nicht.
  3369.  
  3370. Siehe auch => WriteChar
  3371.  
  3372.  
  3373. Key
  3374. ====
  3375.  
  3376. Aufruf       : Key Definition/S Befehlsfolge/F
  3377.  
  3378. Benötigt     : Nichts
  3379.  
  3380. Setzt Fehler : Ja
  3381.  
  3382. Ergebnisse   : Nein
  3383.  
  3384. Beschreibung : Key belegt eine beliebige Taste mit einer Funktionsfolge.
  3385. Bei `Definition' handelt es sich um eine Tastaturbeschreibung, wie sie
  3386. auch für die `Commodities' des Betriebssystem verwendet wird. Schauen
  3387. sie bitte für eine genauere Beschreibung in ihren Handbüchern unter dem
  3388. Stichwort `Commodities' nach. Erlaubt ist momentan nur der Typ `rawkey'.
  3389.  
  3390. Siehe auch =>
  3391.  
  3392.  
  3393. ClearKeys
  3394. ==========
  3395.  
  3396. Aufruf       : ClearKeys
  3397.  
  3398. Benötigt     : Nichts
  3399.  
  3400. Setzt Fehler : Nein
  3401.  
  3402. Ergebnisse   : Nein
  3403.  
  3404. Beschreibung : Löscht die komplette mit Key eingegebene
  3405. Tastaturbelegung. Diese Funktion sollte mit Vorsicht benutzt werden, da
  3406. nach ihrem Aufruf ein sinnvolles Arbeiten mit WRITE kaum noch möglich
  3407. ist.
  3408.  
  3409. Siehe auch => Key
  3410.  
  3411.  
  3412. SetHotKey
  3413. ==========
  3414.  
  3415. Aufruf       : SetHotKey Nummer/N Tastensequenz/S Funktion/F
  3416.  
  3417. Benötigt     : Nichts
  3418.  
  3419. Setzt Fehler : Ja
  3420.  
  3421. Ergebnisse   : Nein
  3422.  
  3423. Beschreibung : WRITE besitzt intern eine Reihe von Hotkeys, die mit einer
  3424. beliebigen Tastenkombinationsbeschreibung über die `commodities.library'
  3425. mit einer beliebigen WRITE-internen Funktion belegt werden können. Da
  3426. die `commodities.library' benutzt wird, muß die Tastensequenz den
  3427. Richtlinien, die auch für alle anderen Commodities gelten, folgen. Für
  3428. das genaue Format der Tastensequenz schauen sie demnach in ihrer
  3429. Dokumentation, die sie beim Kauf ihres Computers bekommen haben, nach.
  3430. Funktion ist eine beliebige Funktionsfolge. Ein bereits bestehender
  3431. HotKey wird durch eine Redefinition überschrieben.
  3432.  
  3433. Siehe auch =>
  3434.  
  3435.  
  3436. Menu
  3437. =====
  3438.  
  3439. Aufruf       : Menu Titel/S
  3440.  
  3441. Benötigt     : Nichts
  3442.  
  3443. Setzt Fehler : Nein
  3444.  
  3445. Ergebnisse   : Nein
  3446.  
  3447. Beschreibung : `Menu' hängt an die Menüleiste ein neues Menü mit dem
  3448. Titel `Titel' an
  3449.  
  3450. Siehe auch => Item, Sub, ItemBar, SubBar, ClearMenu
  3451.  
  3452.  
  3453. Item
  3454. =====
  3455.  
  3456. Aufruf       : Item Titel/S ShortCut/S Funktionliste/F
  3457.  
  3458. Benötigt     : Nichts
  3459.  
  3460. Setzt Fehler : Nein
  3461.  
  3462. Ergebnisse   : Nein
  3463.  
  3464. Beschreibung : `Item' hängt an den zuletzt initialisierten Menü einen
  3465. Menüpunkt mit dem Titel `Titel' und dem Shortcut `ShortCut' an und
  3466. belegt diesen mit der angegeben Funktionsliste. Diese wird immer dann
  3467. automatisch ausgeführt, wenn der Menüpunkt selektiert wird.
  3468.  
  3469. Siehe auch => Menu, Sub, ItemBar, SubBar, ClearMenu
  3470.  
  3471.  
  3472. Sub
  3473. ====
  3474.  
  3475. Aufruf       : Sub Titel/S ShortCut/S Funktionliste/F
  3476.  
  3477. Benötigt     : Nichts
  3478.  
  3479. Setzt Fehler : Nein
  3480.  
  3481. Ergebnisse   : Nein
  3482.  
  3483. Beschreibung : `Sub' hängt an den zuletzt initialisierten Menüpunkt ein
  3484. Untermenü mit dem Titel `Titel' und dem Shortcut `ShortCut' an und
  3485. belegt diesen mit der angegeben Funktionsliste. Diese wird immer dann
  3486. automatisch ausgeführt, wenn das Untermenü selektiert wird.
  3487.  
  3488. Siehe auch => Menu, Item, ItemBar, SubBar, ClearMenu
  3489.  
  3490.  
  3491. ItemBar
  3492. ========
  3493.  
  3494. Aufruf       : Itembar
  3495.  
  3496. Benötigt     : Nichts
  3497.  
  3498. Setzt Fehler : Nein
  3499.  
  3500. Ergebnisse   : Nein
  3501.  
  3502. Beschreibung : Hängt an den letzten Menüpunkt einen nicht selektierbaren
  3503. Querstricht an. Diese Funktion sollte zur optischen Aufteilung eines
  3504. Menüs benutzt werden.
  3505.  
  3506. Siehe auch => Menu, Item, Sub, SubBar, ClearMenu
  3507.  
  3508.  
  3509. SubBar
  3510. =======
  3511.  
  3512. Aufruf       : SubBar
  3513.  
  3514. Benötigt     : Nichts
  3515.  
  3516. Setzt Fehler : Nein
  3517.  
  3518. Ergebnisse   : Nein
  3519.  
  3520. Beschreibung : Hängt an das letzte Untermenü einen nicht selektierbaren
  3521. Querstricht an. Diese Funktion sollte zur optischen Aufteilung eines
  3522. Menüs benutzt werden.
  3523.  
  3524. Siehe auch => Menu, Item, Sub, ItemBar, ClearMenu
  3525.  
  3526.  
  3527. ClearMenu
  3528. ==========
  3529.  
  3530. Aufruf       : ClearMenu
  3531.  
  3532. Benötigt     : Nichts
  3533.  
  3534. Setzt Fehler : Nein
  3535.  
  3536. Ergebnisse   : Nein
  3537.  
  3538. Beschreibung : Löscht die komplette eingegebene Menübelegung. Diese
  3539. Funktion sollte mit Vorsicht benutzt werden, da nach ihrem Aufruf ein
  3540. sinnvolles Arbeiten mit WRITE kaum noch möglich ist.
  3541.  
  3542. Siehe auch => Menu, Item, Sub, ItemBar, SubBar
  3543.  
  3544.  
  3545. WaitPointer
  3546. ============
  3547.  
  3548. Aufruf       : WaitPointer
  3549.  
  3550. Benötigt     : Nichts
  3551.  
  3552. Setzt Fehler : Nein
  3553.  
  3554. Ergebnisse   : Nein
  3555.  
  3556. Beschreibung : Setzt für alle Fenster den Warte-Mauszeiger. Sinnvoll,
  3557. wenn z.B. ein Makro oder REXX-Script etwas länger dauert und man dem
  3558. Benutzer zeigen möchte, daß WRITE noch arbeitet und nicht etwa
  3559. abgestürzt ist.
  3560.  
  3561. Siehe auch => NormalPointer
  3562.  
  3563.  
  3564. NormalPointer
  3565. ==============
  3566.  
  3567. Aufruf       : NormalPointer
  3568.  
  3569. Benötigt     : Nichts
  3570.  
  3571. Setzt Fehler : Nein
  3572.  
  3573. Ergebnisse   : Nein
  3574.  
  3575. Beschreibung : Setzt
  3576.  
  3577. Siehe auch => Setzt den Mauszeiger wieder in den Normalzustand.
  3578.  
  3579.  
  3580. DoREXX
  3581. =======
  3582.  
  3583. Aufruf       : DoREXX DateiName/S Flags/T
  3584.  
  3585. Benötigt     : REXX-Libraries im `libs:'-Verzeichnis. RX-Befehl.
  3586.  
  3587. Setzt Fehler : Ja
  3588.  
  3589. Ergebnisse   : Nein
  3590.  
  3591. Beschreibung : Führt die angegebe Datei als REXX-Script aus. Je nach
  3592. dem, ob `@ASYNC' in `Flags' gesetzt ist oder nicht, wartet WRITE auf
  3593. Beendigung des Scripts oder nicht. Soll das Script auf auch Kommandos an
  3594. WRITE schicken, so sollte `@ASYNC' gesetzt (das Script wartet sonst
  3595. darauf, daß WRITE die Befehle ausführt, während WRITE darauf wartet
  3596. das das Script ausgeführt wird), außerdem sollte man vorher eventuell
  3597. LockWindow aufrufen, da die Befehle immer an das aktive Fenster gehen und
  3598. wenn während der Ausführung ein anderes Fenster aktiviert wird, gibt es
  3599. ein heilloses Chaos.
  3600.  
  3601. Siehe auch => LockWindow, OpenPort, ClosePort, WaitPort
  3602.  
  3603.  
  3604. LockWindow
  3605. ===========
  3606.  
  3607. Aufruf       : LockWindow ID/N
  3608.  
  3609. Benötigt     : Nichts
  3610.  
  3611. Setzt Fehler : Ja
  3612.  
  3613. Ergebnisse   : Nein
  3614.  
  3615. Beschreibung : LockWindow lockt den Ed mit dem zugehörigen ID. Das
  3616. heißt, daß alle Befehle, die über die REXX-Schnittstelle kommen, auf den
  3617. gelockten Ed wirken, selbst wenn zwischendurch andere Fenster aktiviert
  3618. werden etc. Ein gelocktes Fenster sollte mit `LockWindow 0' vor Verlassen
  3619. des REXX-Script wieder entlockt werden, da sonst Scripte, die ein Fenster
  3620. nicht explizit locken, alle Nachrichten ebenfalls an diesen Ed schicken.
  3621. Ein erneuter Aufruf von `LockWindow' überschreibt einen alten Lock. Kann
  3622. der angegebene ID nicht gefunden werden, so wird ein Fehler
  3623. zurückgegeben.
  3624.  
  3625. Sollen mehrere Script gleichzeitig gestartet werden und diese auf
  3626. verschiedene Fenster wirken, so benutzen sie bitte die Funktionen
  3627. OpenPort, ClosePort, WaitPort.
  3628.  
  3629. Siehe auch => OpenPort, ClosePort, WaitPort
  3630.  
  3631.  
  3632. NextEd
  3633. =======
  3634.  
  3635. Aufruf       : NextEd ID/N
  3636.  
  3637. Benötigt     : Nichts
  3638.  
  3639. Setzt Fehler : Ja
  3640.  
  3641. Ergebnisse   : Nein
  3642.  
  3643. Beschreibung : Aktiviert den nächsten Ed, dessen ID nach dem angegebenen
  3644. kommt. Kann kein weiterer ID gefunden werden, so gibt `NextEd' einen
  3645. Fehler zurück.
  3646.  
  3647. Siehe auch =>
  3648.  
  3649.  
  3650. OpenPort
  3651. =========
  3652.  
  3653. Aufruf       : OpenPort ID/N
  3654.  
  3655. Benötigt     : Ed
  3656.  
  3657. Setzt Fehler : Ja
  3658.  
  3659. Ergebnisse   : Ja
  3660.  
  3661. Beschreibung : OpenPort öffnet einen persönlichen REXX-Port für den Ed
  3662. mit dem angegebenen ID. Der Name des Ports wird in _RS zurückgegeben.
  3663. Kann der Port nicht geöffnet werden (ein Task kann nur eine begrenzte
  3664. Zahl von Ports verwalten) so wird ein Fehler zurückgegeben.
  3665.  
  3666. Siehe auch => ClosePort, WaitPort
  3667.  
  3668.  
  3669. ClosePort
  3670. ==========
  3671.  
  3672. Aufruf       : ClosePort ID/N
  3673.  
  3674. Benötigt     : Ed
  3675.  
  3676. Setzt Fehler : Ja
  3677.  
  3678. Ergebnisse   : Nein
  3679.  
  3680. Beschreibung : `ClosePort' schließt den mit OpenPort geöffneten
  3681. REXX-Port wieder. Kann der Ed mit dem angegebenen ID nicht gefunden
  3682. werden, oder existiert kein Port, so wird ein Fehler zurückgegeben.
  3683.  
  3684. Siehe auch => OpenPort, WaitPort
  3685.  
  3686.  
  3687. WaitPort
  3688. =========
  3689.  
  3690. Aufruf       : WaitPort ID/N
  3691.  
  3692. Benötigt     : Ed
  3693.  
  3694. Setzt Fehler : Ja
  3695.  
  3696. Ergebnisse   : Nein
  3697.  
  3698. Beschreibung : Wird dieser Befehl von einem REXX-Script aus aufgerufen,
  3699. so kehrt er erst zurück wenn der REXX-Port des Ed geschlossen wird. Dies
  3700. passiert im algemeinen, wenn der Ed verlassen (d.h. meisten, das Fenster
  3701. geschlossen) wird.
  3702.  
  3703. Siehe auch => OpenPort, ClosePort
  3704.  
  3705.  
  3706. ModifyWin
  3707. ==========
  3708.  
  3709. Aufruf       : ModifyWin Mode/N
  3710.  
  3711. Benötigt     : Fenster
  3712.  
  3713. Setzt Fehler : Nein
  3714.  
  3715. Ergebnisse   : Nein
  3716.  
  3717. Beschreibung : Mit `ModifyWin' läßt sich ein offenes Fenster auf
  3718. verschiedene Weise manipulieren. Mode=0 : Fenster wird gezipt. Mode=1 :
  3719. Fenster wird aktiviert. Mode=2 : Fenster wird nach vorne gebracht. Mode=3
  3720. : Fenster wird nach hinten gebracht.
  3721.  
  3722. Siehe auch => ModifyScreen
  3723.  
  3724.  
  3725. ModifyScreen
  3726. =============
  3727.  
  3728. Aufruf       : ModifyScreen Mode/N
  3729.  
  3730. Benötigt     : Nichts
  3731.  
  3732. Setzt Fehler : Nein
  3733.  
  3734. Ergebnisse   : Nein
  3735.  
  3736. Beschreibung : Mit `ModifyScreen' läßt sich der Screen, auf welchen
  3737. alle Fenster und Requester geöffnet werden, nach vorne und nach hinten
  3738. bringen. Mode=0 : Screen nach vorne. Mode=1 : Screen nach hinten.
  3739.  
  3740. Siehe auch => ModifyWin
  3741.  
  3742.  
  3743. SetREXXClip
  3744. ============
  3745.  
  3746. Aufruf       : SetREXXClip ClipName/S Typ/N Nummer/N
  3747.  
  3748. Benötigt     : Nichts/Ed
  3749.  
  3750. Setzt Fehler : Ja
  3751.  
  3752. Ergebnisse   : Nein
  3753.  
  3754. Beschreibung : `SetREXXClip' kopiert den Inhalt einer Zeile/eines Puffers
  3755. in das REXXClipboard unter dem angegebenen Namen, wo sie dann mit
  3756. `getclip(Name)' wider ausgelesen werden kann. Ist `Typ'=0, so wird die
  3757. Zeile mit der angegebenen `Nummer' gelesen. Ist `Typ'= 1, so wird der
  3758. angegebene Puffer ins REXXClipboard geschrieben. Dabei markieren
  3759. Linefeets den Zeilenumbruch. Ist beim Auslesen der Zeile kein Ed
  3760. aktiviert, oder existiert die angegebene Zeile/der angegebene Puffer
  3761. nicht, so wird ein Fehler zurückgegeben.
  3762.  
  3763. Siehe auch =>
  3764.  
  3765.  
  3766. GetConfig
  3767. ==========
  3768.  
  3769. Aufruf       : GetConfig Name/S
  3770.  
  3771. Benötigt     : Nichts
  3772.  
  3773. Setzt Fehler : Ja
  3774.  
  3775. Ergebnisse   : Nein
  3776.  
  3777. Beschreibung : `GetConfig' aktiviert die Konfiguration mit dem
  3778. angegebenen Namen, damit auf dessen Einstellungen/Variabeln
  3779. zurückgegriffen werden kann. `GetConfig' läd nicht nocht nicht geladene
  3780. Konfigurationen nach, auch kann nicht `""' für die Standardkonfiguration
  3781. angegeben werden.
  3782.  
  3783. Siehe auch =>
  3784.  
  3785.  
  3786. SetIntern
  3787. ==========
  3788.  
  3789. Aufruf       : SetIntern Type/N Which/N Address/N
  3790.  
  3791. Benötigt     : Ed
  3792.  
  3793. Setzt Fehler : Ja
  3794.  
  3795. Ergebnisse   : Nein
  3796.  
  3797. Beschreibung :
  3798.  
  3799. Siehe auch => Refresh
  3800.  
  3801.  
  3802. Refresh
  3803. ========
  3804.  
  3805. Aufruf       : Refresh
  3806.  
  3807. Benötigt     : Fenster
  3808.  
  3809. Setzt Fehler : Nein
  3810.  
  3811. Ergebnisse   : Nein
  3812.  
  3813. Beschreibung : Aktuallisiert das EditorFenster, d.h. der sichtbare Text
  3814. wird neu geschrieben. Diese Funktion sollte aufgerufen werden, nachdem
  3815. SetIntern den Inhalt einer Zeile geändert hat.
  3816.  
  3817. Siehe auch =>
  3818.  
  3819.  
  3820. ChangeConfig
  3821. =============
  3822.  
  3823. Aufruf       : ChangeConfig ConfigName/S
  3824.  
  3825. Benötigt     : Ed
  3826.  
  3827. Setzt Fehler : Ja
  3828.  
  3829. Ergebnisse   : Nein
  3830.  
  3831. Beschreibung : Ändert die Konfiguration eines Eds auf die Konfiguration
  3832. `ConfigName'. Die genannte Konfiguration wird ggf. nachgeladen. Diese
  3833. Funktion ist nützlich, wenn man zum Beispiel mit einer minimalen
  3834. Konfiguration arbeitet (Mailer etc.) und die Leistungfähigkeit einer
  3835. komplexeren Konfiguration braucht.
  3836.  
  3837. Siehe auch =>
  3838.  
  3839.  
  3840. MacroRec
  3841. =========
  3842.  
  3843. Aufruf       : MacroRec
  3844.  
  3845. Benötigt     : Nichts
  3846.  
  3847. Setzt Fehler : Nein
  3848.  
  3849. Ergebnisse   : Nein
  3850.  
  3851. Beschreibung : `MacroRec' startet die Aufzeichnung eines Macros. D. h.
  3852. Alle Komandos nach dem Befehl `MacroRec' bis ausschließlich dem Befehl
  3853. `MacroStop' werden aufgezeichnet. Dabei sind ein paar Dinge zu beachten:
  3854.   1. Mausbewegungen, sowie Aktionen die mit Mausdrücken verbunden sind,
  3855.      als auch Bewegungen am Scrollbalken werden *nicht* aufgezeichnet.
  3856.  
  3857.   2. Fensterwechsel etc. werden nicht aufgezeichnet.
  3858.  
  3859.   3. Der MacroSaver speichert nicht den (im Konfigurationsfile
  3860.      angegebenen) Quelltext, sondern den erzeugten Zwischencode. So haben
  3861.      z.B. Variablen den Wert zum Zeitpunkt des Abspeicherns nicht den zum
  3862.      Zeitpunkt der Macroausführung.
  3863.  
  3864.   4. Macros können nicht rekursiv verschachtelt werden. Erneutes
  3865.      Aufrufen von `MacroRec' löscht das alte und beginnt ein neues Makro.
  3866.  
  3867. Siehe auch => MacroStop, MacroPlay, SetMacro, ExecuteMacro, MacroPannel
  3868.  
  3869.  
  3870. MacroStop
  3871. ==========
  3872.  
  3873. Aufruf       : MacroStop
  3874.  
  3875. Benötigt     : Nichts
  3876.  
  3877. Setzt Fehler : Nein
  3878.  
  3879. Ergebnisse   : Nein
  3880.  
  3881. Beschreibung : Stopt die Aufzeichnung eines Makros.
  3882.  
  3883. Siehe auch => MacroRec, MacroPlay, SetMacro, ExecuteMacro, MacroPannel
  3884.  
  3885.  
  3886. MacroPlay
  3887. ==========
  3888.  
  3889. Aufruf       : MacroPlay Anzahl/N
  3890.  
  3891. Benötigt     : Nichts
  3892.  
  3893. Setzt Fehler : Nein
  3894.  
  3895. Ergebnisse   : Nein
  3896.  
  3897. Beschreibung : Führt das aufgezeichnete Makro `Anzahl' mal aus.
  3898.  
  3899. Siehe auch => MacroRec, MacroStop, SetMacro, ExecuteMacro, MacroPannel
  3900.  
  3901.  
  3902. SetMacro
  3903. =========
  3904.  
  3905. Aufruf       : SetMacro Nummer/N Name/S Funktionsliste/F
  3906.  
  3907. Benötigt     : Nichts
  3908.  
  3909. Setzt Fehler : Ja
  3910.  
  3911. Ergebnisse   : Nein
  3912.  
  3913. Beschreibung : `SetMacro' weist einem internen Array (0...19) eine
  3914. Funktionsliste mit den angegebenen Namen als Referenz zu. Dieses kann
  3915. dann anschließen über diesen Namen wieder mit der Funktion ExecuteMacro
  3916. aufgerufen oder mittels der Funktion MacroPannel selektiert werden.
  3917.  
  3918. Siehe auch => MacroRec, MacroStop, ExecuteMacro, MacroPannel
  3919.  
  3920.  
  3921. ExecuteMacro
  3922. =============
  3923.  
  3924. Aufruf       : ExecuteMacro Name/S
  3925.  
  3926. Benötigt     : Nichts
  3927.  
  3928. Setzt Fehler : Ja
  3929.  
  3930. Ergebnisse   : Ja
  3931.  
  3932. Beschreibung : Führt das mittels SetMacro definierte Makro mit den Namen
  3933. `Name' aus.
  3934.  
  3935. Siehe auch => MacroRec, MacroStop, SetMacro, MacroPannel
  3936.  
  3937.  
  3938. MacroPannel
  3939. ============
  3940.  
  3941. Aufruf       : MacroPannel
  3942.  
  3943. Benötigt     : Nichts
  3944.  
  3945. Setzt Fehler : Nein
  3946.  
  3947. Ergebnisse   : Nein
  3948.  
  3949. Beschreibung : Nach dem Aufruf dieser Funktion öffnet sich ein Requester,
  3950. in dem alle mit SetMacro definierten Makros namendlich in Form von einem
  3951. Gadgetpannel aufgeführt werden. Durch drücken eines Gadgets startet man
  3952. das entsprechende Makro. Das MacroPannel kann auch mit einem Doppelklick
  3953. der rechten Maustaste geöffnet werden.
  3954.  
  3955. Siehe auch => MacroRec, MacroStop, SetMacro, ExecuteMacro
  3956.  
  3957.  
  3958. Undo
  3959. =====
  3960.  
  3961. Aufruf       : Undo Count/S
  3962.  
  3963. Benötigt     : Ed
  3964.  
  3965. Setzt Fehler : Nein
  3966.  
  3967. Ergebnisse   : Nein
  3968.  
  3969. Beschreibung : Mittels dieses Befehles, kann man die angegebene Anzahl
  3970. von Textveränderungen rückgängig machen. Beachten sie, daß die
  3971. maximale Anzahl der gespeicherten Veränderungen vom Wert der Variablen
  3972. _UNDO abhängt.
  3973.  
  3974. Siehe auch =>
  3975.  
  3976.  
  3977. ClearList
  3978. ==========
  3979.  
  3980. Aufruf       : ClearList List/N
  3981.  
  3982. Benötigt     : Nichts
  3983.  
  3984. Setzt Fehler : Ja
  3985.  
  3986. Ergebnisse   : Nein
  3987.  
  3988. Beschreibung : Lösche die angegebene Liste.
  3989.  
  3990. Siehe auch =>
  3991.  
  3992.  
  3993. Addlist
  3994. ========
  3995.  
  3996. Aufruf       : AddList String/S List/N Tags/T
  3997.  
  3998. Benötigt     : Nichts
  3999.  
  4000. Setzt Fehler : Ja
  4001.  
  4002. Ergebnisse   : Nein
  4003.  
  4004. Beschreibung : Hängt an die angegebene Liste den String `String' an. Ist
  4005. in `Tags' `@NODUP' gesetzt, wird der String nun an die Liste angehängt,
  4006. wenn er nicht schon bereits vorhanden ist.
  4007.  
  4008. Siehe auch =>
  4009.  
  4010.  
  4011. ShowList
  4012. =========
  4013.  
  4014. Aufruf       : ShowList Lists/N Zahl/N Tags/T
  4015.  
  4016. Benötigt     : Nichts
  4017.  
  4018. Setzt Fehler : Ja
  4019.  
  4020. Ergebnisse   : Ja
  4021.  
  4022. Beschreibung : Zeigt die angegebene Liste mittels eines Listerequester.
  4023. Ist `@Select' in Tags gesetzt, so kann einer der Strings selektiert
  4024. werden. Ist ein String selektiert worden, so gibt `ShowList' keinen
  4025. Fehler zurück. Der String ist aus der Variable _RS auslesbar.
  4026.  
  4027. Siehe auch =>
  4028.  
  4029.  
  4030. GuideHelp
  4031. ==========
  4032.  
  4033. Aufruf       : GuideHelp Keyword/S
  4034.  
  4035. Benötigt     : Nichts
  4036.  
  4037. Setzt Fehler : Nein
  4038.  
  4039. Ergebnisse   : Nein
  4040.  
  4041. Beschreibung : Dieser Befehl versucht die Anleitung im Guide-Format über
  4042. AmigaGuide bzw. MultiView zu laden und versucht eine Referenz zu dem
  4043. angegebenen Wort zu finden.
  4044.  
  4045. Siehe auch =>
  4046.  
  4047. Hier endet die Anleitung...
  4048.  
  4049. Viel Spaß...
  4050.  
  4051.                                    TIM
  4052.  
  4053.  
  4054. Index
  4055. ******
  4056.  
  4057.  
  4058.  
  4059.  Adresse                                Autor
  4060.  Allgemeine Syntax                      allgemeine Syntax
  4061.  APPICON                                ToolTypes
  4062.  APPMENU                                ToolTypes
  4063.  APPWIN                                 ToolTypes
  4064.  Autor                                  Autor
  4065.  Betriebssystem                         Installation
  4066.  Copyright                              Copyright
  4067.  Copyright allgemein                    Allgemein
  4068.  Credits                                Danksagungen
  4069.  Danksagungen                           Danksagungen
  4070.  Das Prinzip                            Das Prinzip
  4071.  Demoversion                            Demoversion
  4072.  Der Ed                                 Der Ed
  4073.  Einleitung                             Einleitung
  4074.  EMail                                  Autor
  4075.  Fehlerreport                           Autor
  4076.  Fred Fish                              Demoversion
  4077.  Funktionen                             Funktionsbeschreibung
  4078.  Geld                                   Autor
  4079.  GUIDEMODE                              ToolTypes
  4080.  Haftung                                Allgemein
  4081.  Index                                  Index
  4082.  Installation                           Installation
  4083.  Installer                              Installation
  4084.  Kaufkonditionen                        Vollversion
  4085.  KaufPreis                              Vollversion
  4086.  Kommentare                             Autor
  4087.  Konfigurationsfile                     Installation
  4088.  Konstanten                             Konstanten
  4089.  Konstantenbeschreibung                 Konstantenbeschreibung
  4090.  Konzept                                Konzept
  4091.  Kritik                                 Autor
  4092.  Libraries                              Installation
  4093.  MausNet                                Autor
  4094.  OS 2.0                                 Installation
  4095.  Preis                                  Vollversion
  4096.  Registrierung                          Registrierung
  4097.  Samples                                Sound
  4098.  SLEEPMODE                              ToolTypes
  4099.  Sound                                  Sound
  4100.  SOUND                                  ToolTypes
  4101.  Speicher                               Installation
  4102.  Stack                                  Installation
  4103.  Syntax                                 Syntax
  4104.  System                                 Installation
  4105.  Ton                                    Sound
  4106.  ToolTypes                              ToolTypes
  4107.  Upd                                    Sound
  4108.  Update                                 Vollversion
  4109.  Variablen                              Variablen
  4110.  Variablen                              Variablebeschreibung
  4111.  Vollversion                            Vollversion
  4112.  Warum WRITE ?                          Einleitung
  4113.  Wichtig                                Wichtig
  4114.  
  4115.  
  4116. Funktionsindex
  4117. ***************
  4118.  
  4119.  
  4120.  
  4121.  About                                  About
  4122.  AddList                                AddList
  4123.  Ask                                    Ask
  4124.  BackTab                                BackTab
  4125.  Beep                                   Beep
  4126.  BlockCenter                            BlockCenter
  4127.  BlockLeft                              BlockLeft
  4128.  BlockLftAlig                           BlockLftAlig
  4129.  BlockRghtAlig                          BlockRghtAlig
  4130.  BlockRight                             BlockRight
  4131.  Break                                  Break
  4132.  BufferToClip                           BufferToClip
  4133.  ChangeConfig                           ChangeConfig
  4134.  ClearBuffer                            ClearBuffer
  4135.  ClearKeys                              ClearKeys
  4136.  ClearList                              ClearList
  4137.  ClearMenu                              ClearMenu
  4138.  CliptoBuffer                           ClipToBuffer
  4139.  ClosePort                              ClosePort
  4140.  Compare                                Compare
  4141.  CopyBlock                              CopyBlock
  4142.  CursorDown                             CursorDown
  4143.  CursorLeft                             CursorLeft
  4144.  CursorRight                            CursorRight
  4145.  CursorUp                               CursorUp
  4146.  Delete                                 Delete
  4147.  DeleteBlock                            DeleteBlock
  4148.  DeleteLine                             DeleteLine
  4149.  DeleteToEOL                            DeleteToEOL
  4150.  DeleteWord                             DeleteWord
  4151.  DoBuffer                               DoBuffer
  4152.  DoREXX                                 DoREXX
  4153.  DoString                               DoString
  4154.  ExecuteMacro                           ExecuteMacro
  4155.  Find                                   Find
  4156.  FindPattern                            FindPattern
  4157.  Flash                                  Flash
  4158.  Font                                   Font
  4159.  GetConfig                              GetConfig
  4160.  GetConst                               GetConst
  4161.  GetEnv                                 GetEnv
  4162.  GetFile                                GetFile
  4163.  GetFindReplace                         GetFindReplace
  4164.  GetFont                                GetFont
  4165.  GetNumber                              GetNumber
  4166.  GetString                              GetString
  4167.  GetVar                                 GetVar
  4168.  GoTextMark                             GoTextMark
  4169.  Goto                                   Goto
  4170.  GPrefs                                 GPrefs
  4171.  GuideHelp                              GuideHelp
  4172.  Help                                   HelpFkt
  4173.  Hide                                   Hide
  4174.  Iconify                                Iconify
  4175.  If                                     If
  4176.  InsertBlock                            InsertBlock
  4177.  Item                                   Item
  4178.  ItemBar                                ItemBar
  4179.  Key                                    Key
  4180.  LastWord                               LastWord
  4181.  LoadBuffer                             LoadBuffer
  4182.  LockWindow                             LockWindow
  4183.  LowerBlock                             LowerBlock
  4184.  MacroPannel                            MacroPannel
  4185.  MacroPlay                              MacroPlay
  4186.  MacroRec                               MacroRec
  4187.  MacroStop                              MacroStop
  4188.  MatchBracket                           MatchBracket
  4189.  Menu                                   Menu
  4190.  Message                                Message
  4191.  MessageOK                              MessageOK
  4192.  ModifyScreen                           ModifyScreen
  4193.  ModifyWin                              ModifyWin
  4194.  New                                    New
  4195.  NewEd                                  NewEd
  4196.  NextEd                                 NextEd
  4197.  NextWord                               NextWord
  4198.  NOP                                    NOP
  4199.  NormalPointer                          NormalPointer
  4200.  Open                                   Open
  4201.  OpenPort                               OpenPort
  4202.  PageDown                               PageDown
  4203.  PageUp                                 PageUp
  4204.  ParseBuffer                            ParseBuffer
  4205.  Prefs                                  Prefs
  4206.  QuitEd                                 QuitEd
  4207.  Refresh                                Refresh
  4208.  Replace                                Replace
  4209.  Return                                 Return
  4210.  Save                                   Save
  4211.  SaveBuffer                             SaveBuffer
  4212.  Screen                                 Screen
  4213.  SetBackUp                              SetBackUp
  4214.  SetEnv                                 SetEnv
  4215.  SetHotKey                              SetHotKey
  4216.  SetIntern                              SetIntern
  4217.  SetMacro                               SetMacro
  4218.  SetMark                                SetMark
  4219.  SetREXXClip                            SetREXXClip
  4220.  SetTextMark                            SetTextMark
  4221.  SetTitle                               SetTitle
  4222.  SetUserFkt                             SetUserFkt
  4223.  SetVar                                 SetVar
  4224.  ShowASCII                              ShowASCII
  4225.  ShowConstants                          ShowConstants
  4226.  ShowFunctions                          ShowFunctions
  4227.  ShowIndex                              ShowIndex
  4228.  ShowList                               ShowList
  4229.  ShowVars                               ShowVars
  4230.  Silent                                 Silent
  4231.  Sub                                    Sub
  4232.  SubBar                                 SubBar
  4233.  System                                 System
  4234.  Tab                                    Tab
  4235.  UnDelLine                              UnDelLine
  4236.  Undo                                   Undo
  4237.  UnMark                                 UnMark
  4238.  UpperBlock                             UpperBlock
  4239.  WaitPointer                            WaitPointer
  4240.  WaitPort                               WaitPort
  4241.  WinArranger                            WinArranger
  4242.  Window                                 Window
  4243.  WinManager                             WinManager
  4244.  WriteChar                              WriteChar
  4245.  WriteText                              WriteText
  4246.  
  4247.  
  4248. Variableindex
  4249. **************
  4250.  
  4251.  
  4252.  
  4253.  EQUAL                                  EQUAL
  4254.  FALSE                                  FALSE
  4255.  HIGHER                                 HIGHER
  4256.  LOWER                                  LOWER
  4257.  TRUE                                   TRUE
  4258.  _AColor                                _AColor
  4259.  _AppIcon                               _AppIcon
  4260.  _AppMenu                               _AppMenu
  4261.  _AppWindow                             _AppWindow
  4262.  _AutoFree                              _AutoFree
  4263.  _AutoIndent                            _AutoIndent
  4264.  _BColor                                _BColor
  4265.  _CaseSense                             _CaseSense
  4266.  _CColor                                _CColor
  4267.  _Changed                               _Changed
  4268.  _ChipMem                               _ChipMem
  4269.  _ConfigPath                            _ConfigPath
  4270.  _CurrentChar                           _CurrentChar
  4271.  _CurrentConfig                         _CurrentConfig
  4272.  _CurrentID                             _CurrentID
  4273.  _CurrentLine                           _CurrentLine
  4274.  _CurrentWord                           _CurrentWord
  4275.  _Cursor                                _Cursor
  4276.  _DColor                                _DColor
  4277.  _DefaultConfig                         _DefaultConfig
  4278.  _DefaultTool                           _DefaultTool
  4279.  _EditMode                              _EditMode
  4280.  _FastMem                               _FastMem
  4281.  _File                                  _File
  4282.  _FileName                              _FileName
  4283.  _FilePath                              _FilePath
  4284.  _FindString                            _FindString
  4285.  _FRPattern                             _FRPattern
  4286.  _Language                              _Language
  4287.  _Length                                _Length
  4288.  _LoadTab                               _LoadTab
  4289.  _MarkAx                                _MarkAx
  4290.  _MarkAy                                _MarkAy
  4291.  _MarkBx                                _MarkBx
  4292.  _MarkBy                                _MarkBy
  4293.  _Marked                                _Marked
  4294.  _MaxBuffer                             _MaxBuffer
  4295.  _Optimize                              _Optimize
  4296.  _OverwriteIcon                         _OverwriteIcon
  4297.  _PatCase                               _PatCase
  4298.  _Path                                  _Path
  4299.  _PatNoCase                             _PatNoCase
  4300.  _PublicMem                             _PublicMem
  4301.  _ReadTabs                              _ReadTabs
  4302.  _REG1                                  _REG1
  4303.  _REG2                                  _REG2
  4304.  _ReplaceString                         _ReplaceString
  4305.  _REXX                                  _REXX
  4306.  _REXXPortName                          _REXXPortName
  4307.  _RightMargin                           _RightMargin
  4308.  _RN                                    _RN
  4309.  _RS                                    _RS
  4310.  _SaveTab                               _SaveTab
  4311.  _ScreenHeight                          _ScreenHeight
  4312.  _ScreenWidth                           _ScreenWidth
  4313.  _ScrRelHeight                          _ScrRelHeight
  4314.  _ScrRelWidth                           _ScrRelWidth
  4315.  _ShowEOL                               _ShowEOL
  4316.  _ShowSpace                             _ShowSpace
  4317.  _SleepMode                             _SleepMode
  4318.  _Sound                                 _Sound
  4319.  _TabLength                             _TabLength
  4320.  _Time                                  _Time
  4321.  _Undo                                  _Undo
  4322.  _Version                               _Version
  4323.  _VersionString                         _VersionString
  4324.  _WBStarted                             _WBStarted
  4325.  _WinHeight                             _WinHeight
  4326.  _WinMode                               _WinMode
  4327.  _Wins                                  _Wins
  4328.  _WinWidth                              _WinWidth
  4329.  _WordDef                               _WordDef
  4330.  _WordOnly                              _WordOnly
  4331.  _WordWrap                              _WordWrap
  4332.  _WriteIcon                             _WriteIcon
  4333.  _WriteTabs                             _WriteTabs
  4334.  _XPos                                  _XPos
  4335.  _YPos                                  _YPos
  4336.  
  4337.